Как я могу дать разрешение для файлов определенному пользователю или определенной группе?
У нас есть три группы: "g12" ("u1" и "u2), "g34" и "g56".
g12 - должен только считать файл.
g34 - должен записать и считать его.
g56 - должен иметь все полномочия (rwx).
И другие не должны получать доступ к файлу вообще.
Необходимо использовать Списки управления доступом. Они - более усовершенствованный способ обработать полномочия, чем значение по умолчанию user/group/other путь в Linux. Посмотрите эту страницу, например: Списки управления доступом Ubuntu
Пример от той страницы:
setfacl -m u:mike:rwx file or directory
Я только использовал эти команды в лаборатории на сервере adminstration курс сам, но насколько я видел, это - довольно простой способ сделать это.
Как корень:
chown u1:u1 f1.txt
chmod 400 f1.txt
Это гарантирует, что файл принадлежит пользователю u1 (показанный) и группа u1 (предполагающий, что группа u1 пользователя по умолчанию является u1), и что только, что пользователь может считать файл (chmod). Если Вы хотели бы, чтобы пользователь смог записать в файл, измениться 400 - 600.
Можно добавить второго пользователя к группе по умолчанию первого пользователя с:
useradd -G u1 u2
Вышеупомянутая команда предполагает, что группу u1 пользователя по умолчанию также называют u1, и второй пользователь является u2.
Теперь мы изменяем полномочия на f1.txt, чтобы позволить участникам доступа для чтения группы u1 (вторыми "4" в 400 являются полномочия группы):
chmod 440 f1.txt
Каждая из этих трех цифр после команды chmod представляет полномочия для владельца (первая цифра), группа (вторая цифра), и все другие пользователи (третья цифра) в системе. Значение 1 является выполнить разрешением, 2 разрешение записи, и 4 разрешение чтения. Вы добавляете, добавляют эти числа вместе для "смешивания" этих трех типов полномочий. Пример, 4 (чтение) + 1 (выполняются) = 5, так чтобы позволить владельцу и группе читать и выполнять файл, но ограничить доступ ко всем остальным Вы использовали бы 550, чтобы позволить владельцу читать и писать в файл и группу и всех других пользователей для чтения файла, Вы будете использовать 644.
Существуют другие форматы к установке полномочий, вводят:
man chmod
в командной строке для получения дополнительной информации.
короткий ответ, Вы не можете
Вы не устанавливаете полномочия для групп или пользователей, Вы устанавливаете полномочия для файлов. Файл имеет владельца и группу, и можно установить "чтение" "запись" и "выполнить" полномочия отдельно для одного пользователя, одной группы и всех остальных.
Можно ли дать пример того, что это, Вы желаете сделать?