Конкретный групповой доступ к файлам/каталогам linux

Скажем, у меня есть обычные 15 групп пользователей и 1 группа администраторов. У меня есть файловый каталог /ReadingMaterial, в котором есть 15 текстовых файлов. Я хочу, чтобы группа администраторов имела права чтения/записи для всего каталога (все 15 файлов). Я хочу, чтобы группы пользователей могли читать только 1 конкретный файл внутри каталога. Например, UserGroup1 будет иметь только доступ для чтения к файлу с именем UserGroup1Material.txt.

Я не могу найти требуемую команду, хотя нигде с поиском, нашел десятки страниц, которые проходят просто создание или редактирование групп и файлов в целом (владельцы, группы, пользователи), но ни одной для отдельных групп самостоятельно.

Я почти уверен, что это можно сделать, но я не могу найти его ни в поиске Google, ни в руководстве.


person Anan    schedule 12.06.2020    source источник


Ответы (1)


Вы можете изменить групповое владение файлом с помощью chgrp и изменить его разрешение, чтобы только пользователи UserGroup1 и его создатель имели доступ для чтения к вашему файлу:

chgrp UserGroup1 UserGroup1Material.txt
chmod 440 UserGroup1Material.txt
person Storm    schedule 12.06.2020
comment
так было бы что-то вроде chmod 000 /ReadingMaterial, чтобы скрыть каталог от всех, затем chgrp AdminGroup /ReadingMaterial | chmod -R g+rw /ReadingMaterials, чтобы разрешить группе администраторов чтение/запись всего содержимого, затем chgrp UserGroup1 /ReadingMaterial/UserGroupXMaterial.txt | chgmod g+r /ReadingMaterial/UserGroupXMaterial.txt, где X представляет группу пользователей X? | используется для разделения команд - person Anan; 12.06.2020
comment
Кажется, правильно, если вы правильно установили бит x в каталоге, иначе вы не сможете получить доступ ни к одному из файлов. - person Storm; 12.06.2020
comment
не лучше ли изначально не устанавливать все значение 000, а вместо этого использовать g=rw и g=r ? - person Anan; 12.06.2020
comment
Это может быть способ отключить ранее установленные разрешения. - person Storm; 12.06.2020