я добавил ubuntu
пользователь к www-data
group и установите права доступа к папке следующим образом:
sudo gpasswd -a "$USER" www-data
find /var/www -type f -exec chmod 0640 {} \;
sudo find /var/www -type d -exec chmod 2750 {} \;
Я могу проверить это ubuntu
добавлен в группу (работает groups
показывает ubuntu www-data
). Я могу получить доступ и прочитать любые файлы и каталоги в каталоге / var / www как ubuntu
.
Я хочу предоставить записывать разрешения на ubuntu
пользователя в определенных каталогах. Бег sudo chmod -R g+w /var/www/public/uploads/
дает ubuntu
доступ для записи в эту папку.
Проблема в том, что когда www-data
создает новые каталоги в /var/www/public/uploads/
, ubuntu
не имеет разрешения на запись в эти вновь созданные каталоги.
То есть когда www-data
создает /var/www/public/uploads/some-new-folder/
, ubuntu
не может касаться файлов в some-new-folder
.
Как я могу изменить разрешения, чтобы любые файлы и каталоги, созданные www-data
в определенных путях будет доступен для записи ubuntu
также?
Вы можете использовать бит «setgid» родительской папки (в данном случае «uploads»), и любой созданный в ней файл будет иметь указанное членство в группе независимо от создателя. Команда ниже. Вот хороший пост, который я нашел на "setgid": http://www.toptip.ca/2010/03/linux-setgid-on-directory.html
Установите идентификатор с помощью chmod: sudo chmod g + s / var / www / public / uploads / <ваша группа>
Надеюсь, это поможет!