无法在文件夹上设置 GID 位

无法在文件夹上设置 GID 位

我希望所有文件和目录都继承 tvshow 文件夹的权限。

我正在尝试设置 GID 位,但我不知道为什么它不起作用。我正在使用这个来源为我的命令。

david@server:~/media$ ls -l
drwxrwx--- 11 root media_users 11 Jul 23 18:58 tvshows

david@server:~/media$ sudo chmod 2770 tvshows/

david@server:~/media$ ls -l
drwxrwx--- 11 root media_users 11 Jul 23 18:58 tvshows

执行命令后权限没有改变。

我也尝试过使用chmod g+s

编辑:

david@server:~/media$ sudo -g media_users chmod 2770 tvshows/
chmod: changing permissions of ‘tvshows/’: Operation not permitted

安装选项:

david@server:~/media$ sudo zfs get mountpoint storagedata
NAME         PROPERTY    VALUE             SOURCE
storagedata  mountpoint  /mnt/storagedata  local

david@server:/proc$ cat mounts
storagedata /mnt/storagedata zfs rw,relatime,xattr,noacl 0 0

答案1

man chmod

SETUID AND SETGID BITS
       chmod clears the set-group-ID bit of a regular file if the file's group
       ID  does  not  match the user's effective group ID or one of the user's
       supplementary group IDs, unless the user  has  appropriate  privileges.
       Additional restrictions may cause the set-user-ID and set-group-ID bits
       of MODE or RFILE to be ignored. 

在我看来,这意味着media_users不是发出命令的 root 用户的有效组。要以 media_users 作为有效组执行命令,请尝试:sudo -g media_users chmod 2770 tvshows/

答案2

我认为你必须将其更改umask0002

umask 0002

答案3

我必须在 zfs 池中启用 ACL

sudo zfs set aclinherit=passthrough storagedata

来源

相关内容