Как разрешить пользователям создавать и удалять файлы или папки, но не изменять их?
Я создал имя группы "app-data" и папку / db-data / archived-data /
Я хочу, чтобы члены app-data имели все права на папку / db-data /, но я хочу, чтобы пользователи той же группы имели доступ только к созданию и удалению доступа к папке / db-data / archived-data / (пользователи не должны иметь возможность изменять любые файлы или каталоги в нем, но они должны иметь возможность создавать или удалять любые файлы или папки, которые они хотят.
Как мы можем это сделать. Я думаю, что это возможно с помощью ACL, но, пожалуйста, не стесняйтесь, дайте мне знать, как мы можем достичь этого? используя любой метод, я в порядке, но я хочу эту конфигурацию.
пожалуйста помоги.
1 ответ
Это определенно возможно. Во-первых, изменить /db-data
группа для app-data
:
sudo chgrp -R app-data /db-data
Теперь настройте разрешения:
sudo chmod -R g+rwx /db-data
sudo chmod -R g-w /db-data/archived-data/*
sudo find /db-data/archived-data -type d -exec 'chmod' 'g+rwx' '{}' ';'
sudo chmod -R g+rwx /db-data
даетapp-data
полные разрешения на/db-data
и все внутриsudo chmod -R g-w /db-data/archived-data/*
удаляетapp-data
права на запись для всего внутри/db-data/archived-data
- В заключение,
sudo find /db-data/archived-data -type d -exec 'chmod' 'g+rwx' '{}' ';'
восстановленияapp-data
разрешения на запись для каждого каталога в/db-data/archived-data
(но не файлы внутри этих каталогов), что необходимоapp-data
создавать и удалять любые файлы или каталоги внутри/db-data/archived-data
,
Теперь кто-нибудь в app-data
сможет читать, выполнять, создавать и удалять файлы или каталоги в /db-data/archived-data
(включая подкаталоги глубже 1 уровня; т.е. app-data
сможет создавать и удалять файлы в /db-data/archived-data/a/b/
). Если не хочешь app-data
чтобы иметь права на чтение и / или выполнение, измените g-w
в sudo chmod -R g-w /db-data/archived-data/*
в g-rw
без разрешений на чтение, g-wx
без разрешения на выполнение или g-rwx
без каких-либо разрешений (если вы делаете это после запуска find
команда, вам придется перезапустить его).
Наконец, обратите внимание, что если пользователь в app-data
создает файл или каталог, он / она сможет изменять созданный им файл / каталог (но существующие файлы по-прежнему не будут изменены).