4DAY权限管理-2018-04-27

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/
上一篇:String.format() 格式化字符串


下一篇:c# 字符串连接使用“+”和string.format格式化两种方式