本文已参与「新人创作礼」活动,一起开启掘金创作之路。
用户、用户组、权限(五) —— 权限设置
4、权限设置
如果想要给文档设置权限,操作者要么是root用户,要么就是文档所有者
常用语法:#chmod 选项 权限模式 文档******
常用选项:-R 递归设置权限 (当文档类型为文件夹的时候)
权限模式:就是该文档设置的权限信息
文档:可以文件、文件夹、相对路径、绝对路径:
(1) 字母形式
| 给谁设置 | |
|---|---|
| u | 表示所有者身份owner(user) |
| g | 表示给所有者同组用户设置 |
| o | 表示other用户,给其他用户设置权限 |
| a | 表示all ,给所有人,如果在设置权限的时候,不指定给谁设置,则默认给所有用户设置 |
权限字符 r,w ,x
| 权限分配方式 | |
|---|---|
| + | 表示给具体的用户新增权限(相对当前) |
| - | 表示删除用户的权限(相对当前) |
| = | 表示将权限设置成具体的值(注重结果) |
案例:需要给anaconda-ks.cfg文件设置权限,要求所有者拥有全部权限,同组用户拥有读和执行权限,其他用户只读权限。
a. #chmod u+x, g+rx,o+r anaconda-ks.cfg
再ll 一次
使用=号操作
先还原
#chmod u-x, g-rx,o-r anaconda-ks.cfg
b. #chmod u=rwx, g=rx,o=r anaconda-ks.cfg
2)数字形式
如 #chmod 777 xx.txt
| 作用 | 数字 |
|---|---|
| 读:r | 4 |
| 写:w | 2 |
| 执行:x | 1 |
案例:需要给anaconda-ks.cfg 设置权限,权限要求所有者拥有全部权限,同组用户拥有读、执行权限,其他用户只读 #chmod 754 anaconda-ks.cfg
查看下 ll anaconda-ks.cfg
案例1:先将anaconda-ks.cfg文件拷贝到根下,新建用户test,并设置密码123456,然后切换用户至test,在该用户下vim anaconda-ks.cfg下。
案例2:用超级管理员设置文档的权限是 #chmod –R 731 aaa,请问这个有没有什么不合理的地方。
拥有者:7=4+2+1=读+写+执行
同组用户:3=2+1=写+执行、
其他用户:1=1执行
注意:如果一具权限中但凡出现2与3的数字,则该权限有不合理的情况。
案例3:使用root用户在根下创建一个oo文件夹,然后在oo文件下建一个xx.txt文件,给xx.txt全部权限。
a. 切换到root用户 su root
b. mkdir oo
c. touch oo/xx.txt
d. 查看xx.txt 文件 ll oo/
e. 切换到text用户 (属于other)
问题1:text用户是否可以打开 oo/xx.txt 文件
问题2:text用户是否可以编辑 oo/xx.txt 文件
问题3:text用户是否可以删除 oo/xx.txt 文件