当前位置:K88软件开发文章中心电脑基础基础应用04 → 文章内容

Linux如何使用setfacl命令创建权限文件

减小字体 增大字体 作者:华军  来源:华军资讯  发布时间:2019-1-30 23:59:11

  setfacl是Linux下设置文件访问控制列表的命令,可用来创建文件,能够继承目录的权限,有些功能类似于chmod命令,今天华军小编给大家展示的是Linux如何使用setfacl命令创建权限文件,精心挑选的内容希望大家多多支持、多多分享,喜欢就赶紧get哦!  下面以 root 用普通用户 user1 。在目录/mnt下  [root@RedHat-7 mnt]# setfacl -m u:user1:rwx share //为目录添加ower = user1 ,并赋予rwx 的权根。  [root@redhat-7 mnt]# setfacl -d -m u:user1:rwx share //为目录添加默认的acl权限,此目录下创建目录和文件都会继承此权限信息  [root@redhat-7 mnt]#  [root@redhat-7 mnt]#  [root@redhat-7 mnt]# getfacl share //查看share的facl信息  # file: share  # owner: root  # group: root  user::rwx  user:user1:rwx // 此时user1才能对share有写权限  group::r-x  mask::rwx  other::r-x  default:user::rwx //默认子目录或文件的权限信息  default:user:user1:rwx  default:group::r-x  default:mask::rwx  default:other::r-x  [root@redhat-7 mnt]# cd share/  [root@redhat-7 share]# ls  [root@redhat-7 share]# touch roota  [root@redhat-7 share]# touch rootb  [root@redhat-7 share]# mkdir rootdir1  [root@redhat-7 share]# mkdir rootdir2  [root@redhat-7 share]# ls  roota rootb rootdir1 rootdir2  [root@redhat-7 share]# getfacl roota  # file: roota  # owner: root  # group: root  user::rw-  user:user1:rwx #effective:rw-  group::r-x #effective:r--  mask::rw-  other::r--  [root@redhat-7 share]# getfacl rootdira  getfacl: rootdira: No such file or directory  [root@redhat-7 share]# getfacl rootdir  rootdir1/ rootdir2/  [root@redhat-7 share]# getfacl rootdir1  # file: rootdir1  # owner: root  # group: root  user::rwx  user:user1:rwx  group::r-x  mask::rwx  other::r-x  default:user::rwx  default:user:user1:rwx  default:group::r-x  default:mask::rwx  default:other::r-x  [root@redhat-7 share]#  现在用user1 进入此目录来检测权限:  [user1@redhat-7 share]$  [user1@redhat-7 share]$  [user1@redhat-7 share]$  [user1@redhat-7 share]$ ll  total 8  -rw-rw-r--+ 1 root root 0 Nov 19 22:52 roota  -rw-rw-r--+ 1 root root 0 Nov 19 22:52 rootb  drwxrwxr-x+ 2 root root 6 Nov 19 22:52 rootdir1  drwxrwxr-x+ 2 root root 6 Nov 19 22:52 rootdir2  [user1@redhat-7 share]$ touch user1a  [user1@redhat-7 share]$ touch user1dir1  [user1@redhat-7 share]$ getfacl user1a //查看新文件的权限  # file: user1a  # owner: user1  # group: user1  user::rw-  user:user1:rwx #effective:rw-  group::r-x #effective:r--  mask::rw-  other::r--  [user1@redhat-7 share]$ rm roota //尝试删除root创建的文件,成功  [user1@redhat-7 share]$ rm rootdir1 //尝试删除root创建的目录,成功  rm: cannot remove arootdir1a: Is a directory  [user1@redhat-7 share]$ rm rootdir1 -r  [user1@redhat-7 share]$ ll  total 4  -rw-rw-r--+ 1 root root 0 Nov 19 22:52 rootb  drwxrwxr-x+ 2 root root 6 Nov 19 22:52 rootdir2  -rw-rw-r--+ 1 user1 user1 0 Nov 19 22:57 user1a  -rw-rw-r--+ 1 user1 user1 0 Nov 19 22:57 user1dir1  [user1@redhat-7 share]$  所以,当有需求要做权根的继承操作时,可以使用这个方来实现。  在新的rhel7 中, 会有新的工具chacl 类似于 setfacl 。  上面就是小编总结的Linux使用setfacl命令创建权限文件的方法介绍了,因为创建的文件继承了父目录的权限,所以在某些时候使用比较方便,当然setfacl命令还有其他的用法。

Linux如何使用setfacl命令创建权限文件