15 权限管理及作业

15 权限管理及作业(作业单独一篇)

一、杂项知识整理

1、访问控制列表:ACL:Access Control List,实现灵活的权限管理。

    除了文件的所有者,所属组和其它人,可以对更多的用户设置权限。

    centos7.0之后默认创建的ext4文件系统有ACL功能,centos7.x之前的版本,默认手工创建的ext4文件系统无ACL功能,需要手动添加:

    查看磁盘acl权限:dumpe2fs -h /dev/sda#:

Filesystem flags:         signed_directory_hash 
Default mount options:    user_xattr acl
Filesystem state:         clean

    tune2fs -o acl /dev/sdb1

    mount -o acl /dev/sdb1 /mnt

二、命令详解及事例

1、setfacl命令

     文件名 :查看acl权限

    -m 设置acl权限

        u:USER:rx /FILE

        u:USER:rx -R /DIR/

        d:u:USER:rx -R /DIR

            d:default 使文件夹下的新建的文件或目录默认有此属性acl权限

                -k DIR 删除默认的acl权限

            即使默认的acl权限给了x,文件也不会继承x权限。

      -Rm g:USER:rwX /DIR 

            设定支持X,使文件夹有而文件没有acl权限

    -x 删除指定的acl权限

        setfacl -x g:USER /FILE

    -b 删除所有的acl权限

    -d 设定默认的acl权限,清空所有acl权限

        逐个用户删除acl时,文件属性上的+不会消除,用-d变为默认,+就会消除

    -R 递归设定

    -M 调用文件:按照格式写入后setacl -M file.acl FILE/DIR 

            格式例如: u:wang:0

                       g:g1:rwx

                       u:tom:rw

    getfacl file1 | setfacl –set-file=- file2 复制file1的acl权限给file2

    setfacl –set u::rw,u:wang:rw,g::r,o::- file1情况所有acl权限,用新的替代,必须包含所有ugo的设置。

2、getfacl FILE 查看acl权限属性:

    其中mask是最大值限定,可以设置以保证acl权限不会过大,原理:mask与赋予的acl权限相与(屏蔽权限,与umask同样),mask与赋予的acl权限同时存在时才会赋予此权限,也就是两个为真才为真,但是当mask为rwx时,不论赋予的何种权限,结果都为赋予的权限本身。

    设定mask权限:setfacl  -m   mask:rwx  FILE

mask值影响的不包括u和o。

3、cp和mv都支持acl但是cp命令需要加-p,但是tar等常见的备份工具不会保留acl信息。

三、课后练习及作业

1、pdf 6最后一个问题:

[root@localhost testdir]# ll
总用量 72
-r---w-rw-. 1 root root     4 8月   3 17:04 a
-r---w-rw-. 1 root root     4 8月   3 17:04 a~
dr---wxrw-. 2 root root  4096 8月   3 17:03 aa
-r---w-rw-. 1 root root     0 8月   3 17:53 b
drwxr-xr-x. 3 root root  4096 7月  30 13:50 copytest
drwxrws---+ 2 root g1    4096 8月   3 17:42 data
drwx------. 2 root root 16384 7月  19 21:07 lost+found
drwxr-xr-x. 2 root root 12288 8月   1 13:54 shelltest
-rw-r--r--. 1 root root    32 7月  29 18:20 string.txt
-rw-r--r--. 1 root root   246 8月   2 22:45 user
drwxr-xr-x. 3 root root  4096 8月   3 13:12 user.dir
-rw-r--r--. 1 root root   195 7月  28 19:37 userinfo
-rw-r--r--. 1 root root    78 8月   2 22:53 userpasswd
[root@localhost testdir]# lsattr
---------------- ./string.txt
----------I----- ./shelltest
---------------- ./b
---------------- ./data
---------------- ./copytest
---------------- ./userinfo
---------------- ./user
---------------- ./lost+found
---------------- ./a~
---------------- ./user.dir
----ia---------- ./aa
-----a---------- ./a
---------------- ./userpasswd
[root@localhost testdir]# getfacl data/
# file: data/
# owner: root
# group: g1
# flags: -s-
user::rwx
group::-wx
group:g2:rw-
group:g3:r--
mask::rwx
other::---

原创文章,作者:SilencePavilion,如若转载,请注明出处:http://www.178linux.com/28045