Linux用户权限小练习
Posted JohnnyFang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux用户权限小练习相关的知识,希望对你有一定的参考价值。
前提要求:创建用户user1、user2、user3,在/data/下创建目录test,具体操作如下:
执行命令useradd user1;useradd user2;useradd user3创建三个用户,执行命令mkdir /data/test即可在/data/下创建test目录(如下图)。
在此基础上,我们开展几个小练习:
- 目录/data/test属主、属组为user1
目录/data/test的属主为user1,即修改文件的所有者,要用到chown命令;而属组为user1,即修改文件的所属组,要用到chgrp命令。
执行chown user1 /data/test 修改属主,执行chgrp user1 /data/test修改数组(如下图)。
- 在目录属主、属组不变的情况下,user2对文件有读写权限
这里主要是利用FACL来实现权限控制,主要有setfacl和getfacl两个命令,setfacl命令用来设置FACL权限,getfacl命令用来查看FACL权限。
执行命令setfacl -R -m u:user2:rw test后,我们查看test会发现other的权限部分多了一个“+”执行命令getfacl test查看facl权限,发现user2已经具备了读写权限(如下图)。
- user1在/data/test目录下创建文件a1.sh, a2.sh, a3.sh, a4.sh,设置所有用户都不可删除a1.sh,a2.sh文件、除了user1及root之外,所有用户都不可删除a3.sh, a4.sh
user1在/data/test目录下创建文件,需切换到user1再进行操作(如下图)。
首先来看a1.sh和a2.sh文件,因为是所有用户不可删除,包括了root,涉及到文件的特殊属性,需用到chattr +i 命令,执行chattr +i a1.sh a2.sh命令后,我们可用lsattr命令来查看是否生效(如下图)。
其次是a3.sh和a4.sh文件,文件由user1创建,除user1和root外不可删除,涉及到Sticky权限,需用到chmod o+t命令(如下图)。
- user3增加附加组user1,同时要求user1不能访问/data/test目录及其下所有文件
使用usermod命令来为user3增加附加组(如下图)。
执行setfacl -m u:user1:- /data/test命令,即让user1无读写执行权力,也就不能访问/data/test目录及其下所有文件(如下图)。
- 清理/data/test目录及其下所有文件的acl权限
执行setfacl -R -b /data/test命令即可清理/data/test目录及其下所有文件的acl权限(如下图)。
以上是关于Linux用户权限小练习的主要内容,如果未能解决你的问题,请参考以下文章