Я запускаю Arch Linux на своем ноутбуке в качестве машины для разработки, и мне нужно предоставить группе пользователей права RW для папки: / srv / http и всех файлов и папок в ней.
Я убедился, что ACL установлен, а затем добавил его в свой fstab:
/dev/sda7 / ext4 rw,relatime,data=ordered,acl 0 1
Затем я выполнил следующее:
sudo setfacl -m group:users:rw- -R /srv/http
Он отлично работает на моем настольном компьютере, почему он не работает так же на моем ноутбуке? После использования команды setfacl выше у пользователей больше не будет доступа для чтения к файлам или папкам.
Когда я удаляю записи ACL следующим образом:
sudo setfacl -bR /srv/http
После этой команды пользователи могут открывать файлы, но не изменять их.
Я что-то здесь делаю не так?
Вот результат "ls -l / srv / http"
[shane@arch-mobile ~]$ ls -l /srv/http/
total 4
drwxr-xr-x 9 http http 4096 Aug 7 11:04 drupal7
Вывод «zcat /proc/config.gz | grep -i acl»:
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_BTRFS_FS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_GENERIC_ACL=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_CIFS_ACL=y
CONFIG_9P_FS_POSIX_ACL=y
Вы должны разрешить "пользователям" искать каталоги, иначе это не сработает:
sudo find /srv/http -type d -exec setfacl -m group:users:rwx {} \;
Если вывод
mount | grep acl
команда пуста, ваша корневая файловая система смонтирована без поддержки acl. Но если это произойдет, setfacl
команда выдаст ошибку «Операция не поддерживается».
Пожалуйста, опубликуйте вывод getfacl /srv/http
команда.
@quanta ничего. Означает ли это, что у меня где-то проблема с fstab?
Да. Это означает, что ваша корневая файловая система не была перемонтирована с поддержкой ACL:
# mount -o remount,acl /dev/sda7
и попробуй еще раз.