Есть ли способ заставить файл, созданный в каталоге, наследовать владение от родительского каталога? Я попробовал немного, но, похоже, это не сработало.
Пример того, что я ищу:
drwxrwxr-x www-data somegroup parentdir
Когда parentdir / newfile.htm создан someuser:
-rwxrwxr-x www-data somegroup newfile.htm
NOT
-rwxr-xr-x someuser somegroup newfile.htm
Как это можно сделать? Спасибо!
Вы проблема (это не действительно проблема), повышения двух частей, как я понимаю от Вас.
Первый Вы хотите дать владение файлов, созданных пользователем в том каталоге непосредственно апачскому пользователю www-data
. Это не может быть сделано тот путь.
В реальной жизни Вы не можете дать что-то своему другу, если он не хочет ее!!
То же самое здесь, Вы не можете дать владение некоторому пользователю без его разрешения.
Поэтому, как решить это здесь:
все еще необходимо сделать chown
sudo chown www-data newfile.htm
, другое необходимое должно измениться, разрешение файла к наследовало разрешение родительского каталога.
Это не хорошая привычка, так как каталог обычно имеет, выполняют разрешение x
сделать cd
доступный в. Но x
для нормального файла делают его исполняемым файлом, и как те файлы, как Вы упомянули, принадлежат www-данным, это также делает Вас в проблеме с огромной угрозой нарушения безопасности, таким образом, мой совет не делает этого
, Но так или иначе если Вы все еще хотите попробовать: смотрите для тех двух вопросов
Linux знали что-то как Список управления доступом (ACL) . Это - способ расширить стандартные полномочия Unix и точно настроить их. Одно из преимуществ - то, что это действительно имеет наследование. На то, что могло быть сделано, сослались связанным сообщение на serverfault, и в Вашем особом случае:
sudo setfacl -Rdm g:somegroup:rwx /path/to/parent
Что касается того, чтобы вынуждать файлы принадлежать тому же пользователю, это было обсуждено в , Получение новых файлов наследовать полномочия группы на Linux, однако вынуждая того же владельца на каждом файле намного более неприятно, чем наличие файла, который будет вынужден иметь то же владение группы, как сделано через setfacl
. Если у группы есть точно те же полномочия как владелец, нет никакого смысла вызвать то же владение. Конечно, Вы могли всегда использовать inotifywait
и триггер chown
после создания файла, но это бессмысленно, так как владение группы уже дает Вам контроль над файлом.
См. также: