s 许可是什么意思?

Avi*_*Raj 10 command-line

当我运行ls -l命令时/usr/bin/sudo,它显示

$ ls -l /usr/bin/sudo
-rwsr-xr-x 1 root root 121144 Feb 28  2013 /usr/bin/sudo
Run Code Online (Sandbox Code Playgroud)

s这个sudo文件的权限是什么意思?

Avi*_*Raj 8

s(setuid) 表示在执行时设置用户 ID。如果打开文件的 setuid 位,执行该可执行文件的用户将获得拥有该文件的个人或组的权限。

$ ls -l /usr/bin/sudo
-rwsr-xr-x 1 root root 121144 Feb 28  2013 /usr/bin/sudo
Run Code Online (Sandbox Code Playgroud)

在此s权限被授予所有者,因此它表示该文件是可执行的,并且设置了 set-user-ID 模式。

来源