一、功能
Linux/Unix的文件调用权限主要分为三级:文件拥有者、群组、其它。利用chmod命令可以控制文件如何被他人所调用。
二、语法
chmod [-cfvR] [--help] [--version] mode file…
三、参数说明
权限范围:
u:文件的拥有者,即当前用户。
g:文件的拥有者属于同一个群组,即当前群组。
o:除了文件的当前用户或当前群组之外的用户或群组。
a:所有的用户及群组。
权限代号:
r:表示可读取,用数字4来代替表示。
w:表示可写入,用数字2来代替表示。
x:表示可执行,用数字1来代替表示
其它参数:
+:表示增加权限。
-:表示删除权限。
=:表示唯一设定权限。
-c:文件权限发生改变时,报告处理信息。
-R:对当前目录下的所有文件及子目录进行相同权限的变更。
-v:显示权限变更的详细资料。
-f:若该文件权限无法被更改也不要显示错误信息。
--version:显示版本信息。
--help:显示帮助信息。
四、用法
chmod命令主要用于控制Linux系统文件或目录的访问权限。
chmod命令主要用两种方法:
★ 一种是包含字母和操作符表达式的文字设定法;
★ 一种是包含数字的数字设定法。
举例1:-rw-r--r--
-rw-r--r--
解析:第一个字符表示文件类型。
如果第一个字符是d,则表示这是个文件夹;
如果第一个字符是l,则表示这是个连接文件;
如果第一个字符是-,则表示这是个普通文件。
后面的9个字符表示权限,9个字符共分为3组,每组3个字符。
第1组表示创建这个文件的用户的权限;
第2组表示创建这个文件的用户所在的组的权限;
第3组表示其它用户的权限。
在每组中的3个字符里,第1个字符表示读取权限,第2个字符表示写入权限,第3个字符表示执行权限。
所以说在这里表示这是一个普通文件,创建文件的用户的权限为rw-,创建文件的用户所在的组的权限为r--,其它用户的权限为r--。
举例2:chmod 761
chmod 761表示:给创建文件的用户设置的权限是7,7=4+2+1,所以意思是给创建文件的用户赋予读取,写入和执行权限。6=4+2,也就是说给创建文件的用户所在的组赋予读取和写入权限,最后一个1表示执行权限,也就是说,给其他用户执行权限。
举例3:给test.txt所有用户及群组添加可执行权限
chmod a+x test.txt
举例4:删除test.txt文件当前用户原有的权限,然后使其具有可读、可写、可执行权限,并输出处理信息。
chmod u=rwx test.txt -c
举例5:将test.txt文件设为所有人可读取
chmod ugo+r test.txt 或者 chmod a+r test.txt
举例6:将文件test1.txt和test2.txt设为该文件拥有者,与其所属同一个群体者可写入,但其它以外的人则不可写入。
chmod ug+w,o-w test1.txt test2.txt
举例7:将test.txt文件设定为只有该文件拥有者可以执行
chmod u+x test.txt