полномочия - предоставляют два пользовательских полных доступа к каталогу

Мне определили местоположение каталога веб-сервера в /var/www/web. В одном из файлов, скажем, create_dir.php, Я создаю каталог с mkdir(). Я получаю следующее сообщение.

Предупреждение: mkdir (): Разрешение, отклоненное в/var/www/web/create_dir.php на строке 122

Теперь, я могу петлять, когда я - владелец файла или каталог. Но, когда я не владелец, я не могу отредактировать файлы в PhpStorm.

Моего пользователя звонят josh и apache2 пользователь является значением по умолчанию, www-data.

Я по существу должен сделать группу или специального/волшебного пользователя, который позволит мне выполнять и редактировать файлы каждый раз, когда.

Примечание: Я посмотрел на этот ответ суперпользователя, и он не работал на меня. Я выполнил эту команду для создания группы:

sudo groupadd website

Я выполнил эти команды для добавления пользователей:

sudo usermod -a -G website josh
sudo usermod -a -G website www-data

Я выполнил эту команду для добавления его к веб-папке:

sudo chgrp -R website /var/www/web

Я выполнил эту команду и после того как я перезагрузил свой веб-сайт, я получил Запрещенное сообщение об ошибке.

sudo chmod -R 770 /var/www/web

Таким образом, я выполнил эту команду, чтобы смочь просмотреть веб-страницу:

sudo chmod -R 775 /var/www/web

И теперь я возвращаюсь к начальной ситуации.

Любая справка ценится.

4
задан 10 November 2017 в 17:31

1 ответ

Общие каталоги в Linux могут путать из-за владения и полномочий.

Для этого определенного каталога, /var/www/html/ здесь уже существует ответ

Как избегать использования sudo при работе в/var/www?

Поэтому сделайте обоих пользователей членом www-data. По моему скромному мнению, никакая потребность сделать новую группу.

Для управления полномочиями и принадлежностью файла установите группу и setGID

sudo chgrp -R www-data /var/www/html
sudo chmod 2770 /var/www/html 

Для получения дополнительной информации см. https://www.gnu.org/software/coreutils/manual/html_node/Directory-Setuid-and-Setgid.html

... if a directory’s set-group-ID bit is set, newly created subfiles inherit the same group as the directory ...

Перезапустите свою оболочку или выйдите из системы и въезжайте задним ходом для членства для вступления в силу.

При необходимости в более прекрасной мелкой частице управления, можно использовать ACL, но это - вероятно, излишество.

Поскольку дополнительная информация о ACL видит https://help.ubuntu.com/community/FilePermissionsACLs и http://brunogirin.blogspot.com/2010/03/shared-folders-in-ubuntu-with-setgid.html

Та вторая ссылка конкретно рассматривает этот точный вопрос, как совместно использовать/var/www/html, с помощью setGID и ACL.

5
ответ дан 1 December 2019 в 09:30

Другие вопросы по тегам:

Похожие вопросы: