在Linux中,每个文件或目录都会有一组共9个基础权限位,每三位字符被分为一组,
它们分别是
属主权限位(占开头的前三个字符,如:rw-)
属组权限位(占中间的三个字符,如:r--)
其他用户权限位(占结尾的三个字符,如:r--)
最终形式为rw-r--r--
在Linux中正是通过这9个权限位来控制文件用户、用户组、
以及其他用户对文件的访问权限的。
不同组的权限说明图,如下
不同权限位对应的用户和组权限控制的详细图,如下
前三位:用户权限位 | 中三位:用户组权限位 | 后三位:其他用户权限位 | ||||||
r | w | x | r | - | x | r | - | x |
user(用户) | group(用户组) | others(其他用户) | ||||||
代表字符为u | 代表字符为g | 代表字符为o |
权限位:
权限位主要分为三个部分,分别是属主、属组以及其他人
rwx :属主
r-x :属组
r-x :其他人
表示权限的字符rwx-分别代表着特定的含义,
且每一个权限拥有一个数字编号,如下:
r(read):可读权限,对应数字4
w(write):可写权限,对应数字2
x(Execute):可执行权限。对应数字1
-:没有任何权限,对应数字0。
在添加权限的时候,可以将权限加起来
index
属主 : 可读 可写 可执行
属组 :可读 可写
其他人:没有任何权限rwxrw---- 等于760
添加权限
chmod [参数] [权限表达式] [操作对象]
参数 | 解释说明 |
-R | 递归处理指定目录及其子目录下的所有文件(递归增加权限) |
测试权限对于用户的意义
1、普通用户是严格遵守权限的
2、root用户是高于权限
3、权限需要重新登录才生效(su和su - 都可以)
测试权限对于目录的意义
1、文件可读,路径的最小权限是必须拥有可执行权限
2、文件可写,路径的最小权限是必须拥有可执行权限
3、文件可执行,路径的最小权限是必须拥有可读可执行权限
创建文件的默认权限,创建文件夹的默认权限是从哪里来的
在Linux中,常用文件的权限是666,目录的权限是777
1、文件的权限是跟umask值相减,遇到奇数加1,遇到偶数则不变。
常用文件权限666 ➖ umask值 = 创建文件默认权限
2、文件夹的权限只要跟umask值相减即可。
常用目录权限777➖umask值=创建文件夹的默认权限
储备知识
&& 代表:and 并且
||代表:or 或者
练习
案例1:将index文件添加属主 : 可读可写可执行、属组 :可读可写、其他人:没有任何权限
chmod 760 index
案例2:将baidu下的所有文件设置rwxr--r--
chmod -R 744 baidu/
案例3:将index这个文件的属组增加一个可执行权限。
chmod g+x index
也可以在g+x后面用逗号隔开添加一个删除其他用户权限位的命令
chmod g+x,o-r index