Как я могу добавить файл создать чтение, запись и удаление для конкретного пользователя?
Вопрос:
Мне нужно дать файлу доступ для создания, чтения, записи и удаления /var/log только для привязки пользователя.
Как я могу это сделать, если только не разрешить чтение, запись и удаление доступа для всех?
1 ответ
Неважно, я нашел ответ сам:
Это невозможно при стандартных разрешениях Unix.
Однако это не означает, что это невозможно в Linux.
С http://www.yolinux.com/TUTORIALS/LinuxTutorialManagingGroups.html:
Списки контроля доступа (ACL) применяются к файлам и каталогам. Поведение ACL определяется проектом IEEE POSIX 1003.1e и поддерживает управление / доступ к сигналам, порты TCP/IP (ниже 1024), необработанные сокеты, ... ACL являются дополнением к стандартным разрешениям для файлов Unix (r,w,x,-) для пользователя, группы и других для чтения, записи, выполнения и отказа в разрешениях. Списки ACL предоставляют пользователям и администраторам гибкость и прямой детальный контроль над тем, кто может читать, записывать и выполнять файлы.
И далее:
Ядро Linux 2.6 (начиная с Fedora Core 2) поддерживает списки ACL для файловых систем EXT2, EXT3, XFS, JFS и ReiserFS.
И с http://www.linux-tutorial.info/modules.php?name=ManPage&sec=1&manpage=setfacl
setfacl -m u:bind:rw /var/log/DESIRED_FILENAME_HERE
Также современный Linux использует ext4.
Обратите внимание:
http://www.linuxquestions.org/questions/linux-general-1/how-to-enable-acl-support-on-ext4-915306/
Вам необходимо перемонтировать точку монтирования - в данном конкретном случае это корневая / файловая система, а не просто нужный каталог. Другими словами, попробуйте
sudo mount -o remount,acl /
В будущем измените строку в /etc/fstab на
UUID=66eeee3e-b860-41b0-abf7-074c0e08420e / ext4 relatime,acl,errors=remount-ro 0 1