linux中,有三种不同类型的用户可以对文件或目录进行访问:文件所有者,同组用户,其他用户。所有者一般是文件的创建者,文件所有者自动拥有对该文件的读、写和可执行权限。所有者能允许同组用户有权访问文件,还能将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中的每一位用户都能访问该用户拥有的文件和目录。
每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;和属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件访问权限。
例: - rw- r-- r--
代表的含义是:普通文件 文件主 组用户 其他用户
- 表示是普通文件;
chmod [who] [+ | - | =] [mode] 文件名
chmod a+x 文件名 意思是赋给所有用户可执行权限
u 表示"用户(user) ",即文件或目录的所有者
g 表示"同组(group)用户",即和文件属主有相同ID的所有用户
o 表示"其他(others)用户"
a 表示"所有(all)用户"
操作符号:
+ 添加某个权限
- 取消某个权限
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
r 可读
w 可写
x 可执行
数字设定法:
0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是 (u) (g) (o)
例如,如果让某个文件的属主有"读/写"两种权限,需要把4 (可读)+ 2 (可写)=6 (读/写)
数字设定法的一般形式为:
chmod [mode] 文件名
例: chmod 764 文件名 //把文件的权限设置为764,即 rwx :4+2+1=7 ; rw- : 4+2=6 ; r-- : 4