0xff001 基本权限UGO
1、描述
文件权限设置,可以赋予莫个用户或组能够以何种方式 访问某个文件
2、权限对象U\G\O(属主\属组\其他人)
例如:[root@localhost ~]# ll /user01.txt -rw-rw-r--+ 1 root root 0 4月 27 19:14 /user01.txt
解释:- \ rw- \rw- \r— + \1 \root \root\ 0 \ 4月 27 19:14 \ /user01.txt
文件类型\U属主\G属组\O其他人\ACL权限\硬链接数量\属主\属组\大小\ 时间 \文件名
3、权限类型 r\w\x(读4\写2\执行1)
例如:[root@localhost ~]# ll /user01.txt -rw-rw-r--+ 1 root root 0 4月 27 19:14 /user01.txt
解释:- \ rw- \rw- \r— + \1 \root\root\ 0 \ 4月 27 19:14 \ /user01.txt
\U属主”读写-” \G属组 “读写-” \O其他人”读--“ \ACL权限
\4+2+0=6 \4+2+0=6 \4+0+0=4 \
4、chmod设置文件及目录“rwx”权限
字母设置权限
使用符号:u用户 g组 o其他 r读 w写 x执行语法: chmod 对象(u/g/o/a) 赋值符(+/-/=) 权限类型(r/w/x) 文本对象\目录[root@localhost ~]# cd /tmp[root@localhost tmp]# chmod u+x file1 //属主增加执行[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 //显示的结果
数字设置权限
[root@localhost ~]# chmod 644 file1[root@localhost ~]# ll file1-rw-r--r-- 1 alice it 17 10-25 16:45 file1
5、chown设置文件及目录的"属主及属组"
#chown: 设置一个文件属于谁,属主语法:chwon 用户名.组名 文件
例如:[root@localhost ~]# chown alice.hr file1 //改属主、属组[root@localhost ~]# chown alice file1 //只改属主[root@localhost ~]# chown .hr file1 //只改属组
6、chgrp设置文件及目录的"属组"
#chgrp: 设置一个文件属于哪个组,属组语法: chgrp 组名 文件 -R是递归的意思[root@localhost ~]# chgrp it file1 //改文件属组[root@localhost ~]# chgrp -R it dir1 //改文件属组
0xff002 基本权限ACL
1、概述
文件权限管理之: ACL设置基本权限(r、w、x) UGO设置基本权限: 只能一个用户,一个组和其他人
2、getfacl查看ACL权限
[root@localhost ~]# getfacl 1.txt
# file: 1.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--
3、setfacl设置ACL权限
setfacl参数m修改、x删除、b清除 u主、g组、o其他、d继承、a=ugo
[root@tianyun ~]# touch /home/test.txt[root@tianyun ~]# ll /home/test.txt -rw-r--r-- 1 root root 0 10-26 13:59 /home/test.txt
[root@tianyun ~]# getfacl /home/test.txt//查看文件有哪些ACL权限。[root@tianyun ~]# setfacl -m u:alice:rw /home/test.txt //增加用户alice权限[root@tianyun ~]# setfacl -m u:jack:- /home/test.txt //增加用户jack权限[root@tianyun ~]# setfacl -m o::rw /home/test.txt //其他人用户权限
4、man帮助查看setacl权限
[root@tianyun ~]# man setfacl
/EXAMPLES //查找示例=多多观察,你会发现很多有趣的事情=[root@tianyun ~]# getfacl file1 |setfacl --set-file=- file2 //复制file1的ACL权限给file2
5、继承权限
setfacl 目录 d 继承权限及子目录继承权限
[root@tianyun ~]# setfacl -m d:u:alice:rwx /home
0xff003 总结
1、r、w、x权限对文件和目录的意义
权限 | 对文件的影响 | 对目录的影响 |
---|---|---|
r(读取) | 可以读取文件的内容 | 可以列出目录的内容(文件名) |
w(写入) | 可以更改文件的内容 | 可以创建或删除目录中的任一文件 |
x(执行) | 可以作为命令执行 | 可以访问目录的内容(取决于目录中文件的权限) |
0xff004 案例
案例1:
针对hr部门的访问目录设置权限,要求如下:
1. root用户和hr组的员工可以读、写、执行
2. 其他用户没有任何权限
操作思路:
1创建组
2创建用户
3修改属主和属组
4设置权限
[root@localhost ~]# groupadd hr
[root@localhost ~]# useradd hr01 -G hr
[root@localhost ~]# useradd hr02 -G hr
[root@localhost ~]# mkdir /home/hr
[root@localhost ~]# chgrp hr /home/hr #修改附属组
[root@localhost ~]# chmod 770 /home/hr
[root@localhost ~]# ll -d /home/hr/
drwxrwx---. 2 root hr 4096 3月 13 14:26 /home/hr/