Из справочной страницы sudo:
sudo позволяет разрешенному пользователю выполнять команду от имени суперпользователя или другого пользователя, как указано в политике безопасности.
Это не влияет на обычные (файловая система) разрешения. Таким образом, если исполняемый файл имеет разрешения 755 (-rwxr-xr-x
), то каждый пользователь в системе может его выполнить. Но - в зависимости от исполняемого файла - для некоторых операций вы получаете ошибку отказа в разрешении:
$ ls -l /sbin/ifconfig
-rwxr-xr-x 1 root root 67912 May 11 2013 /sbin/ifconfig
$ whoami
user
$ /sbin/ifconfig
eth0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:29886 errors:0 dropped:0 overruns:0 frame:0
TX packets:17383 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3706932 (3.5 MiB) TX bytes:34965406 (33.3 MiB)
$ /sbin/ifconfig eth0 down
SIOCSIFFLAGS: Operation not permitted
$ sudo /sbin/ifconfig eth0 down
[sudo] password for user:
- no error -
$
Обратите внимание, что изменение разрешений /sbin/ifconfig
на 700 (-rwx-----
) не позволит обычным пользователям выполнить его, но могут быть другие способы получения информации. Например IP-адрес через ip address
или файловую систему /proc
.