8月3日作业

文件权限相关的课堂练习:

1)当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作?

    用户小明不能进入/testdir,不能删除,不能创建。使用ll能看到有哪些文件,但是看不到具体信息

2)当用户xiaoqiang对/testdir 目录无读权限时,意味着无法做哪些操作?

不能查看文件夹内部有哪些文件,如果知道文件夹内有哪些,则可以删除,也可以在里面创建

3)当用户wangcai 对/testdir 目录无写权限时,该目录下的只读文件file1是否可修改和删除?

    不能删除,对目录无写权限,说明不能删除目录中包含的file1的文件名和inode的对用关系;因为文件只读,所以也不会有修改权限

    如果wangcai对目录有写权限,则能够删除文件,但是还是不能修改文件

4)复制/etc/fstab文件到/var/tmp下,设置文件所有者为wangcai读写权限,所属组为sysadmins组有读写权限,其他人无权限

         ]# cp /etc/fstab /var/tmp/
	 ]# groupadd sysadmins
	 ]# chmod 660 fstab
	 ]# ll
         total 4
	-rw-rw---- 1 ci sysadmins 921 Aug  4 20:52 fstab

问题:在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。

        ]# mkdir -p /data/testdir
	]# groupadd g1; groupadd g2; groupadd g3
	]# useradd alice;useradd tom
	以上为创建目录、用户、组的初始化准备工作
	]# gpasswd -a alice g2;gpasswd -a tom g3
	]# setfacl -m d:alice:rw  ../testdir #
	]# setfacl -m d:tom:r  ../testdir
	]# setfacl -m d:o:0  ../testdir
	]# getfacl ../testdir
	# file: ../testdir
	# owner: root
	# group: root
	user::rwx
	group::r-x
	other::r-x
	default:user::rwx
	default:user:alice:rw-
	default:user:tom:r--
	default:group::r-x
	default:mask::rwx
	default:other::---
	]# touch f1
	]# getfacl f1
	# file: f1
	# owner: root
	# group: root
	user::rw-
	user:alice:rw-
	user:tom:r--

课后作业:

设置/testdir/f1的权限,使user1用户不可以读写执行,g1组可以读写 

        ]# setfacl -m u:user1:0,g:g1:rw f1
	]# getfacl f1
	# file: f1
	# owner: root
	# group: root
	user::rw-
	user:user1:---
	group::r--
	group:g1:rw-
	mask::rw-
	other::r--

/testdir/dir的权限,使新建文件自动具有acl权限:user1:rw,g1:—

        ]# setfacl -m d:user1:rw,d:g:g1:0 dir
	[root@CentOS6 testdir]# getfacl dir
	# file: dir
	# owner: root
	# group: root
	user::rwx
	group::r-x
	group:g1:---
	mask::r-x
	other::r-x
	default:user::rwx
	default:user:user1:rw-
	default:group::r-x
	default:group:g1:---
	default:mask::rwx
	default:other::r-x

	[root@CentOS6 testdir]#

备份/testdir目录中所有文件的ACL,清除/testdir的所有ACL权限,并利用备份还原

    [root@CentOS6 data]# getfacl -R testdir > acl.txt
    [root@CentOS6 data]# setfacl -R -b /data/testdir
    [root@CentOS6 data]# cd testdir/
    [root@CentOS6 testdir]# getfacl ../testdir/
    # file: ../testdir/
    # owner: root
    # group: root
    user::rwx
    group::r-x
    other::r-x
    
    [root@CentOS6 testdir]# getfacl ../testdir/*
    # file: ../testdir/acl.txt
    # owner: root
    # group: root
    user::rw-
    group::r--
    other::r--
    
    # file: ../testdir/dir
    # owner: root
    # group: root
    user::rwx
    group::r-x
    other::r-x

    # file: ../testdir/f1
    # owner: root
    # group: root
    user::rw-
    group::r--
    other::r--

    [root@CentOS6 testdir]# setfacl -R --set-file=acl.txt /data/testdir/
    [root@CentOS6 testdir]# getfacl ../testdir/*
    # file: ../testdir/acl.txt
    # owner: root
    # group: root
    user::rw-
    user:user1:---
    group::r--
    group:g1:---
    mask::r-x
    other::r--

    # file: ../testdir/dir
    # owner: root
    # group: root
    user::rw-
    user:user1:---
    group::r--
    group:g1:---
    mask::r-x
    other::r--
    default:user::rwx
    default:user:user1:rw-
    default:group::r-x
    default:group:g1:---
    default:mask::rwx
    default:other::r-x
    
    # file: ../testdir/f1
    # owner: root
    # group: root
    user::rw-
    user:user1:---
    group::r--
    group:g1:---
    mask::r-x
    other::r--

    [root@CentOS6 testdir]#

原创文章,作者:提着酱油瓶打醋,如若转载,请注明出处:http://www.178linux.com/29977