1.linux用户权限解析
1.1.基础权限UGO
文件权限设置:赋于某个用户或组能够以何种方式访问某个文件(图片文件,视频文件,普通文件)
权限对象:u:属主、g:属组、o:其他人、a(u+g+o):所有人(user、group、other、all)
权限类型:读:r=4 写:w=2 执行:x=1(read、write、execution)
文件的所有者、所属组:查看权限:ls -l 文件名(ll 文件名)
-:文件的类型 rw-:主人的权限,属主 r--:属组的权限 r--:其他人的权限
.:权限的扩展 1:文件链接 root:文件的属主 root:文件的属组
282:文件大小 1月 14 15:21:文件最后修改时间 file.txt:文件名
1.2文件权限设置
1.2.1更改权限
①使用符号(u、g、o、r、w、x):
chmod 对象(u/g/o/a)赋值符(+/-/=)权限类型(r/w/x)文件/目录
②使用数字(4读 2写 1执行):chmod 3位数字 文件名
例如:chmod 644 file
1.2.2更改属主、属组
chown命令(设置一个文件属于谁):chown 用户名.组名 文件
chown 用户名 文件(只改属主)
chown .组名 文件(只改属组)
加-R针对目录中的所有文件
chgrp命令(设置一个文件属于哪一个组,只改属组):chgrp 组名 文件名 -R表示递归
1.3案例
案例需求:
- 创建文件file10.txt
- 属主是user100,读写执行-7(可以看、改、执行内容)
- 属组是jishuzu(user200),读取-4(只能看,不能改、执行)
- 其他人没有权限-0(既不能看又不能改和执行)
2.基本高级权限ACL
2.1.UGO与ACL的区别
ACL文件权限管理:设置不同用户,不同的基本权限(r、w、x)。对象数量不同。
UGO设置基本权限:只能一个用户,一个组和其他人。
2.2.语法
命令 设置 用户或组:用户名:权限 文件对象
setfacl -m u:alice:rw /home/test.txt
2.3.用法
- 准备文件:
创建test.txt文件,并查看该文件有哪些ACL权限
- 设置ACL:
注:先创建ailc及lisi用户
为alic、lisi及其他用户设置权限:
[root@192 /]# setfacl -m u:alic:rw /home/test.txt
[root@192 /]# setfacl -m u:lisi:- /home/test.txt
[root@192 /]# setfacl -m o::rw /home/test.txt
最后查看文件ACL权限
- 查看/删除:
查看文件ACL:getfacl 文件名
[root@192 /]# getfacl /home/test.txt
getfacl: Removing leading '/' from absolute path names
查看文件权限,删除了根路径
# file: home/test.txt 文件名
# owner: root 属主:root
# group: root 属组:root
user::rw- 用户:属组:权限rw-
user:alic:rw- 用户:alic:rw-
user:lisi:--- 用户:lisi:---
group::r-- 组:属组:r--
mask::rw- 掩码::rw-
other::rw- other:其他人:rw-
删除文件ACL:
增加hr组队test.txt文件的读取权限并删除其ACL权限
删除文件所有ACL权限