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

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

Возможный дубликат:
Сделать все новые файлы в каталоге доступными для группы

У меня есть каталог, в котором хранятся совместные файлы/каталоги. Допустим, abcвладельцем каталога является root, а группой является project-abc. Я бы хотел, чтобы в этом каталоге было следующее:

  1. Только членам группы project-abcразрешено изменять содержимое этого каталога.
  2. Файлы добавлены в abcсписок необходимыхПрочитайте и напишитеразрешения, установленные для участников или группыabc
  3. Добавленные каталоги должны иметьчитать, писать и выполнятьразрешения для группыabc

Это просто для статических каталогов, но содержимое этого каталога, как ожидается, будет меняться довольно часто. Каков мой наилучший подход к получению желаемого результата?

решение1

Лучшее, что вы можете сделать, это добавить бит setgid ( chmod g+s) в ваши каталоги. Смотрите КаталогSetuid и Setgidв руководстве coreutils. Новые каталоги затем сохранят групповое владение.

Что касается разрешений, лучшее, что вы можете сделать, — убедиться, umask 002что они используются каждый раз, когда кто-то работает в этом каталоге.

(Да, базовые разрешения в стиле Unix иногда слишком просты… Я не знаю, могут ли списки контроля доступа облегчить совместную работу внутри каталога. Если они активированы в вашей системе, вы можете взглянуть.)

Связанный контент