Linux中权限解析:
- linux 中对文件的权限有严格的划分,用来控制和设置对文件的操作权限,如果 有权限,就可以操作文件。
- linux 中的权限类型: 一般 r 读,w 写,x 执行。
- linux 中权限划分的颗粒度:角色的划分:所有者,所有者所在群组的其他人, 其他人。
语法: chmod [-option][parmeter] 文件/目录名
解析: 修改文件、目录的权限,即重新设定文件或者目录的访问权限
参数[-option]:-R ---- 用来修改目录,将目录中所有的文件及子文件权限同步修改,如果不 加参数,就只改本级别的权限。
参数[parmeter]:将权限具体修改为什么权限? rwx 权限值。
方法一: 权限掩码 umask 法
1、将需要修改的权限信息用二进制表示出来,0表示没有权限,1表示有权限
2、将转换后的二进制每三位进行分隔
3、将分隔后的数字转换成八进制或者十进制
4、将转换后的八进制或者十进制拼接到命令中执行即可
例如: 将文件的读写权限修改为: rw-r----x
1、rw-r----x -- > 110100001
2、110100101 -- > 110 100 001
3、110 100 001 -- > 6 4 1
4、chmod 641 文件名
rw-r--r-- ==> rw- 6
r-- 4 ==>结论:r=4,w =2,x=1
--x 1
rwx ==> 777
如果要给所有人都有所有权限: chmod 777 文件名
例如:
[root@localhosttest ~]# chmod 654 ANAC (修改文件权限)
[root@localhosttest ~]# chmod -R 777 ABC(修改目录权限)
方法二:ugo赋值法
u ---- user ,所有者
g ---- group ,所在群组的其他人
o ---- other ,剩下的其他人
a ---- all ,所有人,包括前三个都有
语法:
chmod 角色+/-权限 文件名/目录名
+ ---- 表示给某一个角色赋予某个权限,或者几个权限,如果原来有,再加还有
- ---- 表示给某一个角色取消一个或者几个权限,如果原来没有,再去还没有
例如:
[root@localhosttest ~]# chmod u-x,g-w,o-wx ABC (将文件ABC权限更改为:所有者X执 行权限,群组其他人W编辑权限,剩下其他人w编辑和x执行权限)
[root@localhosttest ~]# chmod -R ugo-x ABC (将目录ABC及其目录下的所有文件及子文 件权限更改为:所有人执行权限)
[root@localhosttest ~]# chmod -R a+rwx ABC (给所有人所有权限)