2014年5月24日星期六

Linux_055:常用命令之二十:chmod

chmod命令用于改变linux系统文件或目录的访问权限。
通过《常用命令之十三:ls》,我们知道两个基本事实:
(1)有三种不同类型的用户可对文件访问:文件属主,与属主同组的用户、其他用户。
(2)文件的访问权限分为三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;其他用户的读、写和执行权限。
以文件为例,
(1)读权限表示只允许读其内容,禁止对其做任何的更改操作,但可以复制这个文件。
(2)写权限一般是在具有读权限之后才能体现作用的,同时具有读和写权限,可以对文件进行编辑。
如果只有写权限而无读权限,则只能对文件增加数据,而不能浏览文件内容。
(3)执行权限表示允许将该文件作为一个程序执行。
文件被创建时,文件属主自动拥有对该文件的读、写和执行权限,以便于对文件的阅读和修改。

chmod命令有两种用法:
(1)包含字母和操作符表达式的文字设定法。
字母“u”代表文件的属主,“g”代表与属主同组的用户,“o”代表其他用户,“a”代表所有用户。
字母“r”代表读权限,“w”代表写权限,“x”代表执行权限。
字母“+”代表增加(权限),“-”代表删除(权限),“=”代表等于(权限)。
(2)包含数字的数字设定法。
数值“4”代表读权限,“2”代表写权限,“1”代表执行权限,而“0”代表无任何权限。

常用例子:

1. chmod a+x log2012.log
给所有用户增加执行权限。

2. chmod ug+w,o-x log2012.log
同时修改不同用户权限:给文件属主和与属主同组的用户增加写权限,同时删除其他用户的执行权限。

3. chmod u=x log2012.log
使用“=”设置权限:撤销文件属主原来所有的权限,然后使文件属主具有执行权限。

4. chmod -R u+x test4
对一个目录及其子目录所有文件添加权限:给test4目录及其子目录中所有文件的属主增加执行权限。

5. chmod 751 file   
给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限。

6. 为所有用户分配读权限
(1)chmod =r file
(2)chmod 444 file
(3)chmod a-wx,a+r file

参考文献:
1. http://www.cnblogs.com/peida/archive/2012/11/29/2794010.html

没有评论: