假设我想要一个目录,里面创建的所有文件和目录都具有该目录的组所有者的组权限,默认权限为770。使用 posix ACL 非常简单
#create a dir..
mkdir proof
#inherit group permission "video" in this example
chmod g+s proof/
chgrp video proof/
#with setfacl make the default group with rxw permissions
setfacl -d -m g:video:rwx proof
#other are not allowed
setfacl -d -m o:--- proof/
chmod o-x proof
#give the acl
setfacl -m g:video:rwx proof
现在我在目录证明中创建一个文件和一个目录..
mkdir try1
drwxrws---+ 2 myuser video 4,0K feb 23 01:26 try1
touch file1
-rw-rw----+ 1 myuser video 0 feb 23 01:29 file1
如您所见,我得到了我想要的,目录中的所有文件都继承了权限,并将“video”组作为组所有者。这在 Linux(ext4 上的 posix acl、btrfs 等)和 Solaris (ufs) 上是可能的。
现在的问题是..如何使用在 Solaris 上使用 nfsv4 acl 的 zfs 来做到这一点?我试过在 zfs Solaris 11 主机中制作另一个目录“证明”(当然制作了 chmod g+s)
chmod A=owner@:read_attributes/read_data/execute/list_directory/read_data/write_data/append_data/execute/add_file/add_subdirectory:fd:allow,group:video:read_attributes/read_data/execute/list_directory/read_data/write_data/append_data/execute/add_file/add_subdirectory:fd:allow,everyone@:read_attributes/read_data/execute/list_directory/read_data/write_data/append_data/execute/add_file/add_subdirectory:fd:deny proof
但结果是..
mkdir newdir
drwxr-sr-x+ 2 myuser video 2 23 feb 02.33 newdir
:|
如何获取posix acl的相同内容?谢谢
找到解决方案,我想要 770 用户+组视频
a) 创建 zfs 卷
b)非常重要,否则不起作用!
c) 现在是 acl
fd 表示文件和目录继承
d)我创建文件......和目录
完美的。我通过本地文件测试它,只有属于视频组的用户才能在目录上写。