执行 ls -l
查看目录下所有子目录和文件的权限及属性。输出结果中每列的含义如下:
首先,第 1 部分的第 1 个字母表示文件类型,主要有下面几种:
之后 9 个字母中,每 3 个一组,分别表示文件所有者 u 权限,同组用户 g 权限和其他用户 o 权限。
属主可以用 a 表示 all users ,即这个文件属于所有用户。
每 3 个字母的组中,各字母依次分别为读 r ,写 w 和执行 x 权限。
权限位出现 - 表示无此权限。例如 rw- 为可读,可写,不可执行。
chmod (-R) <pattern> <file-or-dir-name>
命令用来修改权限。
-R 参数为是否为目标文件夹中的所有子项执行此命令 (更改文件夹所有子项的权限)。
主要有两种方法。
这样的三个数字之可以表示任何一种权限组合。
常用权限组合的有:
比如:
sudo chmod 666 <name>
给所有用户读和写的权限;sudo chmod -R 700 <dir-name>
给属主完全权限,其他人不给任何权限。 -R 表示为所有子文件 (或所有子目录) 都配置此权限。可以操控的颗粒度很细。
基本格式是:
chmod (u|g|o|a)(+|-|=)(r|w|x|s|t) <file-or-dir-name>
例子:
sudo chmod u+rw <name>
给属主增加读写权限。sudo chmod o-rwx <name>
不允许其他用户读写执行。sudo chmod g=rx <name>
同组用户只能读和执行。SUID 对应数字 4:
SGID 对应数字 2:
SBIT 对应数字 1:
在该目录内,该目录的属主在删除该目录下的文件和目录会有确认,但依旧可以删除
rm: remove write-protected regular empty file <file-name>?
在该目录内,除该目录属主之外的所有用户只能删除自己创建的文件或目录,但不影响用户编辑其他用户创建的文件或目录
对于文件或目录的属主与属组权限部分:
对于文件或目录 others 的权限部分: