目录
1.基本权限UGO
1.1.概述:
文件权限设置真实的样子,赋于某个用户或组,能够以何种方式,访问某个文件(图片文件,视频文件,普通文件)
1.2.权限对象:
u属主;g属组;o其他人;所有人:a(u+g+o)
1.3.权限类型:
读:r=4;写:w=2;执行: x=1
1.4.查看权限:
语法:ls -l 文件名
[root@localhost ~]#ls -l /root/1.txt
-rw-r--r--. 1 root root 179 5月 25 14:27 /root/1.txt
解释:
-文件类型;
r w -属主/主人的权限;
r - - 属组的权限;
r - - 其他人的权限;
. 权限的扩展;
l 文件链接(第七章文件链接);
root 文件的属主;
root 文件的属组;
179 大小;
5月 25 14:27 文件最后的修改时间;
/root/1.txt 文件的名和路径。
1.5.更改UGO权限:
chmod:为文件或目录设置访问权限
1.5.1.使用符号:
u用户 g组 o其他 r读 w写 x执行
语法:chmod 对象(u/g/o/a)赋值符(+/-/=)权限类型(r/w/x) 文件/目录
用法示例:
[root@localhost ~]# chmod u+x file1.txt //属主增加执行
[root@localhost ~]# chmod u-x file1.txt //属主减少执行
[root@localhost tmp]# chmod a=rwx file1 //所有人等于读写执行
[root@localhost tmp]# chmod a=- file1 //所有人没有权限
[root@localhost tmp]# chmod ug=rw,o=r file1 //属主属组等于读写,其他人只读
[root@localhost tmp]# ll file1 //以长模式方式查看文件权限
-rw-rw-r--.1 alice it 17 10-25 16:45 file1 //显示的结果
1.5.2.使用数字:
4读 2写 1执行 (语法:chmod 三位数 文件),三个数字分别代表ugo的权限
用法示例:
[root@localhost ~]# chmod 644 file1 //644是默认权限
[root@localhost ~]# ll file1
-rw-r--r--.1 alice it 17 10-25 16:45 file1
1.6.更改属主、属组:
chown:改变文件或目录的所属主以及所属组
1.6.1.chown命令:
语法: chown 用户名.组名 文件
选项:-R 针对目录中所有的文件
chown: 设置一个文件属于谁,属主
用法示例:
[root@localhost ~]# chown alice.hr file1 //改属主、属组
[root@localhost ~]# chown alice file1 //只改属主
[root@localhost ~]# chown .hr file1 //只改属组
1.6.2.chgrp命令:
语法: chgrp 组名 文件
选项:-R 递归
chgrp: 设置一个文件属于哪个组,属组
用法示例:
[root@localhost ~]# chgrp it file1 //改文件属组
[root@localhost ~]# chgrp -R it dir1 //改文件属组
2.基本权限ACL
语法:命令 -选项 用户或组:用户名或组名:权限 文件对象
2.1.区别-UGO:
ACL文件权限管理: 设置不同用户,不同的基本权限(r、w、x)。对象数量不同。
UGO设置基本权限: 只能一个用户,一个组和其他人。
2.2.设置ACL权限
[root@localhost ~]# touch /home/test.txt //准备文件
[root@localhost ~]# getfacl /home/test.txt //查看文件有哪些ACL权限
[root@localhost ~]# setfacl -m u:alice:rw /home/test.txt
[root@localhost ~]# setfacl -m u:jack:- /home/test.txt
//设置用户alice,jack权限
请思考命令中的o是什么作用:
[root@localhost ~]# setfacl -m o::rw /home/test.txt5
2.3.查看ACL解释:
[root@localhost ~]# getfacl /home/test.txt
getfacl: Removing leading '/' from absolute path names //查看文件权限,删除了根路径。
file: home/test.txt //文件名
owner: root //属主:root
group: root //属组:root
user::rwx //用户:属主:rwx
user:alice:rw- //用户:alice:rw-
user:jack:--- //用户:jack:---
group::rwx //组:属组:rwx
mask::rwx //掩码::rwx(有添加的用户权限才出现)
other::rwx //other:其他人:rwx
2.4.删除ACL
[root@localhost ~]# setfacl -m g:hr:r /home/test.txt //增加hr组对test.txt文件读取的权限:
[root@localhost ~]# setfacl -x g:hr /home/test.txt //删除部分权限
[root@localhost ~]# setfacl -b /home/test.txt //删除所有权限