Я выполняю сервер LTS Ubuntu 14.04.1 на Цифровом Океане. Я пытаюсь сделать его так, я могу отредактировать файлы в /srv/www
из моей учетной записи обычного пользователя, не будучи должен быть корнем.
В настоящее время, /srv/www
принадлежит www-data:www-data
:
sudo chown -R www-data:www-data /srv/www
Я также установил полномочия на всех файлах к 664
, и на каталогах к 755
:
sudo find /srv/www/ -type f -exec sudo chmod 644 {} \;
sudo find /srv/www/ -type d -exec sudo chmod 755 {} \;
И я добавил своего пользователя, shea
, к www-data
группа:
sudo adduser shea www-data
Однако, когда я пытаюсь touch /srv/www/foo
, Я получаю следующую ошибку:
touch: cannot touch ‘/srv/www/foo’: Permission denied
Это хорошо работает, если я предварительно ожидаю sudo
к той команде, но я не сделал бы этого все время; плюс он не работает по SFTP.
Изменение владельца к shea:www-data
позволяет мне писать в файлы, но затем WordPress не может обновить плагины и темы.
sudo chown -R shea:www-data /srv/www
Есть ли так или иначе это www-data
и shea
у пользователей может оба быть доступ к /srv/www
? У меня создалось впечатление, что добавление обоих пользователей группе добьется цели, но я, может казаться, не получаю его работа.
Вы - установка 644, которая является чтением группы, не пишут!
sudo chown -R www-data:www-data /srv/www
sudo chmod -R g+w /srv/www
У меня была подобная проблема при выполнении 16.04 на DigitalOcean. Вот шаги, которые я выполнил:
Дайте доступ для записи к группе, связанной с файлом под /var/www/html
sudo find /srv/www/ -type f -exec sudo chmod 664 {} \;
Добавить myuser
к www-data
группа:
sudo adduser myuser www-data
Подтвердите полномочия, например:
ls -la /var/www/html/wp-content/themes/responsive/style.css
дает
-rw-rw-r-- www-data www-data 3892 Jan 1 2017 style.css
Подтвердите состав группы: id myuser
дает
uid=1000(myuser) gid=1000(myuser) groups=1000(myuser),33(www-data),110*lxd)
Однако, когда я затем пытался обновить style.css
без sudo
с моим myuser
учетная запись, я получил a permission denied
ошибка.
Я должен был выйти из системы и войти в снова от всех сессий, которые были зарегистрированы как myuser
прежде чем новые полномочия начали вступать в силу. Не уверенный, почему, но надежда это может помочь кому-либо еще в аналогичной ситуации.