chmod命令是“change mode”的缩写,直译”改变模式“,改变模式是指改变用户对文件或则目录的访问模式(权限),主体对象是文件或目录,针对某一个文件或则目录给某一个用户添加权限或移除权限。
用户:
u(user):文件或目录的当前用户
g(group):文件或目录所属的群组
o(others):除了目录或者文件的当前用户或群组之外的用户或者群组
a (all):所有的用户及群组
权限:
r(read):读权限
w(write):写权限
x(execute):执行权限
-:删除权限
s:特殊权限
操作符:
赋予权限用加号表示:+
撤销权限用减号表示:-
设定权限:=
命令使用格式
chmod [-cfvR] [--help] [--version] mode file
1、可选参数部分的
-c,change
输出被改变文件的信息
-f ,final
若该文件权限无法被更改也不要显示错误讯息
-v,verbose
显示权限变更的详细资料
-R,--recursive
可递归遍历子目录,把修改应到目录下所有文件和子目录
--help
输出帮助信息
--version
输出版本信息。
2、mode部分
这个部分有两种表示方式:一种是包含字母和操作符表达式的文字设定法
另一种是包含数字的数字设定法
第一种方法“
给所有的用户增加读、写、执行权限
chmod a+rwx /opt/data/words.txt
查看变化的区域,linux文件权限信息共有10位,分为4段
第一段:第1位,表示文件类型。
- 为:表示文件;
d为:表示文件夹;
l 为:表示链接文件,可以理解为 windows中的快捷方式(link file);
b为:表示里面可以供存储周边设备;
c为:表示里面为一次性读取装置。
上例中的"-rwxrwxrwx",- 表示这是一个文件
第二段:第2,3,4位,拥有者具有的权限。
如第一行中的“-rwxrwxrwx“,表示拥有者具有可读(r)、可写(w)、可执行(x)的权限。
第三段:第5,6,7位,属于这个组的成员具有的权限。 。
如第一行中的“-rwxrwxrwx“,表示表示这个组的成员可读(r)、可写(w)、可执行(x)的权限。
第四段:第8,9,10位,其他成员具有的权限。
如第一行中的“-rwxrwxrwx“,表示其他成员具有可读(r)、可写(w)、可执行(x)的权限。
第二种方法:
用数字表达mode,将读、写、执行分别用一个数值表示:r=4,w=2,x=1,这样就可以用和值来表示三个用户的权限。例如:
若要rwx属性则4+2+1=7
若要rw-属性则4+2=6
若要r-x属性则4+1=5
上述的给所有用户读写执行的权限写为:chmod 777 /opt/data/words.txt
上面是我对chmod命令的部分总结。欢迎大家批评指正!
————————————————