@Romua1d

Как задать права для linux user и www-data?

chown -R www-data:www-data folder дал права
folder находится в корне юзера.
У юзера нет доступа к folder

Я понимаю, что в идеале нужно закидывать пользователя в группу www-data и использовать 775 и 664 настройки прав.
Но при создании одним юзером файла. Создается 644 и у www-data Нет прав. Также и наоборот

Я вижу что на хостингах, мы заходим под юзером и редактируем файлы и параллельно www-data может их редактировать.

Как сделать так на локалке?
  • Вопрос задан
  • 6680 просмотров
Решения вопроса 1
karabanov
@karabanov Куратор тега Linux
Системный администратор
На хостинге веб сервер тоже работает с правами пользователя. Если это Apache используют apache2-mpm-itk если это Nginx+php-fpm то настраивают php-fpm соответствующим образом.
Доступ по FTP осуществляется так же с правами этого пользователя.
Доступ по SSH/SFTP тоже. Ну вы поняли. Вот и весь секрет.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
ivankomolin
@ivankomolin
Про пользователя user в группе www-data все верно.
Теперь необходимо выставить правильный umask для пользователя user.
Таким образом, чтобы при создании файла права выставлялись 0664.

Базовые права для директорий, это 0777 (rwxrwxrwx) и для файлов 0666 (rw-rw-rw).
umask позволяет формировать права при создании для каждого пользователя отдельно.

Пример создания файла с маской 0022:
Права по умолчанию: 0666
Вычитаемое значение umask: 0022 (-)
Итоговые права: 0644

Чтобы получились правильные права, необходимо установить маску равной 0002

Пример создания файла с маской 0002:
Права по умолчанию: 0666
Вычитаемое значение umask: 0002 (-)
Итоговые права: 0664
Ответ написан
Комментировать
@Reversaidx
Обычно на хостинге решается это использованием одного uuid для пользователя и www-data(для системы они перестают раздичатся)
Ответ написан
chown -R www-data:www-data /var/www
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы