Предположим у меня есть несколько пользователей: u1, u2, u3, u4, u5
Предположим у меня есть директория /usr/work в которой находятся подкаталоги d1, d2, d3, d4, d5
Нужно сделать так, чтобы доступ к директориям и их содержимому был ограничен следующим образом:
d1 — (u1, u2, u4)rwx, остальные rx
d2 — (u2, u5)rwx, остальные rx
d3 — (u3, u5)rwx, остальные rx
d4 — (u1, u3)rwx, остальные rx
d5 — (u2, u3, u5)rwx, остальные rx
Как это сделать оптимальным образом? Я думал насчет того, чтобы создать пять групп g1, g2, g3, g4, g5 с правами rwx для соответствующих директорий. На первый взгляд хорошо, пользователь u5 будет состоять в трех группах g2, g3 и g5, пользователь u2 — в группах g1, g2, g5 и т.д. Но если пользователь u5 попытается создать, допустим, в каталоге u2 файл new.txt, то создать он его может только с одной предопределенной группой (primary group), например g2 (g3 или g5, а может у него есть еще своя группа, users например), и в других каталогах d3 и d5 он будет тоже создавать файлы от имени группы g2. Можно ли сделать так, чтобы создаваемые пользователем файлы в каталоге d2 имели группу g2, в d3 — g3, а в каталоге d5 — g5?
Возможно ли реализовать разделение доступа другим способом?
Я думал насчет того, чтобы написать скрипт, который будет искать в каталогах элементы с неправильными правами (например файл, созданный от имени группы g1 в каталоге d4) и делать chgrp, но это, на мой взгляд, дубовый костыль.
Попрошу не предлагать создать пять дополнительных пользователей с разными паролями с правами rwx на соответствующую директорию для каждого пользователя (например xusr1 имеет rwx на d1, xusr2 — d2 и т.д.) и раздать пароли (xusr1 — для u1, u2, u4, xusr2 — для u2, u5 и т.д.) Это решение хорошо простотой, но не гибкостью.
Система — Debian GNU/Linux 5.0 (Lenny).
Примечание:
Поставил. Заработало.
Спасибо!
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.