On Fri, Jan 08, 2016 at 12:04:15PM +0200, Alexey Kurinnij wrote: > And what about difference? Explain please. > > > > I discovered an article about sudo and globbing[1] and > > > there's difference how it does work on Linux and OpenBSD. > > > > http://zurlinux.com/?p=2244 > > > > > - openbsd > > > > > > # su -s /usr/local/bin/bash - nobody > > > No home directory /nonexistent! > > > Logging in with home = "/". > > > -bash-4.3$ sudo bash -c "ls -l /var/tor/cache*" > > > -rw------- 1 _tor _tor 20442 Dec 10 11:32 /var/tor/cached-certs > > > -rw------- 1 _tor _tor 1409287 Jan 7 15:56 > > /var/tor/cached-microdesc-consensus > > > -rw------- 1 _tor _tor 5107307 Jan 7 17:23 /var/tor/cached-microdescs > > > -rw------- 1 _tor _tor 0 Jan 7 17:23 > > /var/tor/cached-microdescs.new > > > -bash-4.3$ sudo -s bash -c "ls -l /var/tor/cache*" > > > .cshrc .profile altroot bin bsd bsd.rd bsd.sp dev > > etc home mnt root sbin sys tftpboot tmp > > usr var
^^^ here '*' gets expanded inside original user's shell. > > > - linux > > > > > > [root@slot-1 ~]# su -s /bin/bash nobody > > > bash-4.2$ sudo bash -c "ls -l /var/cache/ldconfig/aux*" > > > -rw-------. 1 root root 26470 Dec 22 17:52 /var/cache/ldconfig/aux-cache > > > bash-4.2$ sudo -s bash -c "ls -l /var/cache/ldconfig/aux*" > > > -rw-------. 1 root root 26470 Dec 22 17:52 /var/cache/ldconfig/aux-cache ^^^ here '*' gets expanded probably later, as original user does not have access to /var/cache/ldconfig at all. In both cases original user does not have access to /var/tor, respecively to /var/cache/ldconfig. So the question is: why does same command on equally "restricted" dir path gets different output - why on openbsd does '*' get expanded immediatelly but on linux is it taken into account somehow by sudo (?)... j.