Answers:
在“用户和组”列中“执行”位置看到的s是SetUID(执行时设置用户ID)和SetGID(执行时设置组ID)位。
Unix文件权限实际上是一个4位数的八进制数字 SUGO
您可以使用chmod ug-s directory
或从目录中删除setuid位。chmod 0755 directory
有关更多信息,请参见的手册页chmod
以及有关SetUID位的Wikipedia页面。
chmod 0755
并没有明确的setuid位,至少不会在Linux上。我目前正在其他系统上进行测试。
chmod
使用八进制模式是否清除了setuid,setgid和vtx位。
chmod 00755
; 参见unix.stackexchange.com/q/393531/46851
setuid和setgid(分别是执行时设置的用户ID和执行时设置的组ID的缩写)是Unix访问权限标志,允许用户在可执行文件的所有者或组的许可下运行可执行文件。它们通常用于允许计算机系统上的用户运行具有临时提升特权的程序,以执行特定任务。虽然提供的假定用户ID或组ID特权并不总是得到提高,但至少它们是特定的。
要以数字方式删除setuid和setgid位,必须在位模式前添加一个前缀0
(例如:0775
变成00775
)。
运行以删除setuid和setgid:
chmod 00775 path
要么
chmod a-st path