系统之家 - 系统光盘下载网站!

当前位置:系统之家 > 系统教程 > Linux使用setfacl创建文件

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

时间:2015-01-21 13:35:02 作者:qipeng 来源:系统之家 1. 扫描二维码随时看资讯 2. 请使用手机浏览器访问: https://m.xitongzhijia.net/xtjc/20150121/35445.html 手机查看 评论

  setfacl是Linux下设置文件访问控制列表的命令,可用来创建文件,能够继承目录的权限,有些功能类似于chmod命令,下面小编就给大家介绍下Linux使用setfacl命令创建权限文件的方法,一起来学习下吧。

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

  下面以 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命令还有其他的用法。

发表评论

0

没有更多评论了

评论就这些咯,让大家也知道你的独特见解

立即评论

以上留言仅代表用户个人观点,不代表系统之家立场

其他版本软件

热门教程

人气教程排行

Linux系统推荐

扫码关注
扫码关注

扫码关注 官方交流群 软件收录