У меня возникли проблемы с ситуацией на сервере, где я храню некоторые файлы конфигурации в подкаталоге веб-проекта. Используя свою учетную запись суперпользователя, я вношу изменения в эти файлы, которые NetBeans фиксирует для меня, загружая их.
Но клиент должен иметь возможность доступа и изменения этих файлов через ftp. Я смог запустить chown ftpuser *.*
и это работало, но только до тех пор, пока я не перезагрузил файл, после чего он снова стал моим владельцем, и клиент больше не мог его изменять.
Как мне сделать эти файлы доступными для изменения?иклиент?
(Это Debian 6.0, работающий на Plesk 11)
решение1
Вам следует изучить списки контроля доступа на основе файлов (FACL), поскольку они созданы для решения именно той задачи, которую вы хотите выполнить.
Коротко говоря, вы настраиваете соответствующий раздел на отслеживание разрешений ACL на основе файлов, редактируя файл /etc/fstab и добавляя параметр «acl»:
#example /dev/VolGroup00/LogVol02 / ext3 defaults,acl 1 1
Затем вы устанавливаете соответствующий FACL для каталога, к которому вы хотите предоставить доступ клиенту:
#set existing owner/group to rwx
chmod ug=rwX -R /some/ftp/directory
#set existing files/folders to rwx for ftpuser
setfacl -m u:ftpuser:rwX -R /some/ftp/directory
#set future files/folders to rwx for ftpuser
setfacl -dm u:ftpuser:rwX -R /some/ftp/directory
(Обратите внимание, что мы устанавливаем существующего владельца и группу как rwx, поскольку FACL ограничены разрешениями группы-владельца. Есть и другие способы обойти это, но самый простой — просто указать группу-владельца как rwx)
Ссылки: http://linuxcommando.blogspot.com/2007/12/basic-linux-permission-model-lets-you.html http://retrop.wordpress.com/2012/02/10/enable-file-acls-in-debian-6-access-control-lists/