Как я могу предоставить пользователю 'testuser'
права на запись в папку: /var/www/test/public_html
Самый простой способ - использовать chown
:
sudo chown -R testuser:testuser /var/www/test/public_html
Это сделает пользователя и группу testuser
владелец файла. ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ДРУГОЕ ИМЯ ПОЛЬЗОВАТЕЛЯ (беги whoami
или посмотрите перед @
вашего терминала prompt, или поленитесь и замените testuser
с $USER
), используйте вместо этого это имя пользователя. Например, пользователь Flora colossus
может иметь имя пользователя groot
, в этом случае вы бы побежали sudo chown -R groot:groot
... . Если вы сомневаетесь, воспользуйтесь страницами руководства, приведенными ниже.
или использовать chmod
(читайте и используйте внимательно):
sudo chmod -R 777 /var/www/test/public_html
Который разрешит права на чтение, запись и выполнение для владельца, группы и любые другие пользователи. Бит execute необходим для работы каталогов, файлы могут обходиться с 666
разрешения (строго говоря наибольший файлам не должно требоваться разрешение на выполнение, но это с наименьшей вероятностью приведет к поломке и не требует find
и т.д.). chmod
гораздо сложнее "отменить", если это необходимо, чем другие варианты.
Вот страницы руководства по chown
и chmod
(их также можно найти, выполнив man chown
и man chmod
.)
Я должен добавить, что вы также можете предоставить группам пользователей доступ на запись (примеры здесь и здесь).
Также остерегайтесь предоставления глобального доступа на запись с помощью chmod
команда, если у вас не такие надежные пользователи / скрипты, запущенные на сервере и т.д. - Я рекомендую вместо этого изменить разрешения группы или пользователя. При использовании chmod
пожалуйста, прочтите это и поймите, что он делает.
Я уже видел это, но я не согласен с тем, что это дубликат. Мой вопрос очень специфичен
Если у вас включен ACL: sudo setfacl -Rm u:testuser:rwx /var/www/test/public_html