一、介绍
[root@oldboy ~]# ls -l
total 0
-rw-r--r--. 1 root root 0 Aug 31 00:50 oldboy.txt
#以上含义:oldboy.txt文件的用户是root(权限前3位),用户组是root(权限中3位),其它权限后3位。
权限总共十二位(包含3位特殊权限suid),常见以下9位:
rw-(前三位) r--(中三位) r--(后三位)
用户权限 用户组权限 其他用户权限
四个字符的含义:
r 4 对于文件是可读 对于目录是浏览目录下的文件
w 2 对于文件是可写 对于目录是创建\删除文件(和x配合:先有x权切入进入,才有权删)
如果文件的权限有w,就认为文件可以被删除是错误的思维
文件是否可被删除取决于上级目录是否有w
x 1 对于文件是可执行 对于目录是能否进入目录
- 0 没有权限
二、更改权限:chmod
1.用数字更改:推荐
-R 递归修改
chmod 三位数 文件/目录
[root@oldboy ~]# chmod 774 oldboy.txt
[root@oldboy ~]# ls -l
total 0
-rwxrwxr--. 1 root root 0 Aug 31 00:50 oldboy.txt
2.用字符修改
r
w
x
-
动作
- 减少
+ 增加
= 赋予新的权限
前三位 u(user) 用户位
中三位 g(group) 用户组位
后三位 o(other) 其他用户位
a(all)
例:中三位:增加rx
[root@oldboy ~]# chmod g+rx oldboy.txt
[root@oldboy ~]# ls -l
total 0
---xrwxr--. 1 root root 0 Aug 31 00:50 oldboy.txt
例:前三位:增加rwx
中三位:减少w
后三位:改为x
[root@oldboy ~]# chmod u+rwx,g-w,o=x oldboy.txt
[root@oldboy ~]# ls -l
total 0
-rwxr-x--x. 1 root root 0 Aug 31 00:50 oldboy.txt
三、实践应用
几个用户角色: #Xshell下4个窗口的4个用户
超级用户 root
普通用户 oldboy 属组:inca
oldgirl 属组:inca
其他用户 test 属组:test
groupadd inca #添加组
useradd oldgirl -g inca #oldgirl用户添加到inca组
useradd oldboy -g inca #oldboy用户添加到inca组
useradd test #添加test用户
#如果存在oldboy,oldgirl则使用usermod #改用户
usermod oldgirl -g inca
usermod oldboy -g inca
[root@oldboy ~]# id oldboy
uid=1000(oldboy) gid=6669(inca) 组=6669(inca),10(wheel),1000(oldboy)
[root@oldboy ~]# id oldgirl
uid=6667(oldgirl) gid=6669(inca) 组=6669(inca)
[root@oldboy ~]# mkdir /data -p
[root@oldboy ~]# mv oldboy.txt /data/ #把oldboy.txt文件移动到/data目录下,以防在/root目录下有影响。
四个用户分别 cd /data
分别验证r w x 权限。