Невозможно установить разрешения для новых файлов, добавляемых в каталог

Я пытаюсь добавить разрешения для моей папки nginx html, используя следующее:

sudo chown -R my-user:www-data /webdirectory
sudo chmod -R 0755 /webdirectory

Это работает для существующих файлов в каталоге, однако любые добавленные файлы мне нужно выполнить эти строки снова.

Какие-нибудь решения?

2
задан 8 April 2015 в 23:10

2 ответа

Вы ищете umask. umask оболочка builin, который решит то, что будет разрешение по умолчанию недавно созданного файла. Значение umask может варьироваться от пользователя пользователю.

Проверять umask значение текущего пользователя, выполненного umask в терминале:

$ umask 
0002

Первое 0 указывает, что отсутствие SUID/SGID/Sticky укусило, это - первое битовое значение по умолчанию поэтому, если мы не должны устанавливать ни один из тех трех битов, мы обычно не используем этот бит.

umask значение на самом деле вычитается от 777 (в случае каталога) и от 666 (В случае файла) для получения разрешения недавно созданного файла/каталога. Так, если umask 0002 недавно созданный файл этим пользователем будет иметь разрешение (666 - 002)=664 и каталог будет иметь (777 - 002)=775.

Для изменения значения umask только для текущего пользователя постоянно поместите umask значение в конце ~/.bashrc из пользователя. Например:

echo "umask 022" >> ~/.bashrc

Для изменения временно, выполненный:

$ umask 022

Глобальное umask значение может быть найдено и изменено от /etc/login.defs:

$ grep "^UMASK" /etc/login.defs 
UMASK       022

**** Отметьте, чем Вы не должны использовать chmod/chown случайным образом, если Вы не абсолютно уверены в результате.

3
ответ дан 8 April 2015 в 23:10

umask корректен, но только покрывает chmod часть Вашего вопроса, существует более изящный способ сделать это.

Для проверки, который Вы не имеете к показанному или chmod снова, помещают Вашего пользователя в группу www-данных апачского веб-сервера, как так:

useradd -G my-user www-data

С этим добавляют, что Вы можете записать в этой папке и имени пользователя, и группа будет точно, что Вы попросили. Также с этим, Вам даже не нужно к chmod снова, потому что веб-сервер может считать его, и таким образом, содержание может быть поставлено без каких-либо ограничений.

1
ответ дан 8 April 2015 в 23:10

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

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