当我写: chmod g=rws,u=rwx,o=rxfolder_name
我得到:drwxrwSr-x
但 S 和 s 不一样,对吗?
答案1
您s
为没有该位的组指定了该位x
。 Executable 和 setgid 是单独的位,该ls
命令只是将它们组合成一个字母以获取空间。你需要
chmod g=rwxs,u=rwx,o=rx folder_name
IE chmod 2775 folder_name
。你做到了chmod 2765 folder_name
。
S
表示 setxid 没有可执行文件,它是大写的,因为它很少有用,并且可能是需要修复的错误的迹象。
答案2
显示屏ls
有一个固定大小的模式显示字段(也称为权限位),因此s
如果t
存在可执行位(因为它通常预计会出现在这些位有意义的目录或可执行文件中),如果不存在,则为(大写) S
(或)。没有这样的限制,因此它只是为每个模式位分配一个字母。T
chmod