Я пытаюсь понять, как настроить разрешения для каталога (/apps)
так что как root
пользователь и другой пользователь justin
может читать и писать в каталог.
Пользователь justin входит в группу devs
.
/ apps имеет разрешения drwxrwsr-x
, с владельцем root и группой разработчиков. Дополнительно имеет набор gid; chmod g+s /apps
Проблема в том, что с пользователем root, если я касаюсь файла (теста) внутри / apps, владельцем является root, а группа - devs. Разрешения на файл -rw-r--r--
. Если я переключусь на пользователя Justin и попытаюсь изменить тест, мне будет отказано в разрешении.
В принципе, как лучше всего этого добиться? Я хочу, чтобы root мог создавать каталоги и файлы, и justin
может читать и записывать эти файлы и каталоги. Это необходимо автоматизировать, поскольку файлы и каталоги создаются, это просто работает, ручное обновление разрешений не является вариантом.
Вы выяснили лучшую часть решения, осталось только сделать правильные разрешения для вещей, созданных root. Есть как минимум два подхода
Вы можете изменить корневой процесс для вызова chmod
после изменения файла. Я не думаю, что это применимо к вашему случаю, потому что тогда вы, вероятно, просто позвоните chown
и chmod
и не настраивал каталог sgid.
Вы можете изменить umask
для корневого процесса. Я думаю, что было бы лучше изменить umask только для этого процесса, а не для корневой среды, потому что иногда root касается файлов, с которыми другие пользователи не должны связываться, и обычно лучше не забывать открывать доступ, чем закрывать пробелы. Следовательно, вы можете добавить umask 0007
перед вызовом двоичного файла, который запускается от имени root.