Первичные и вторичные группы в Linux
В чем разница между первичной и вторичной группой? Зачем нужна первичная группа?
Разрешения пользователя такие же, как разрешения основной группы?
Предположим, что есть пользователь A
с основной группой grp1
и пользователь B
с основной группой grp2
и дополнительной группой grp1
. Тогда может B
быть такое же разрешение, как и A
для файлов, созданных A
?
Ответы
В чем разница между первичной и вторичной группами? Зачем нужна первичная группа?
Из групп Unix :
Основная группа - указывает группу, которую операционная система назначает файлам, созданным пользователем. Каждый пользователь должен принадлежать к основной группе.
Дополнительные группы - указывает одну или несколько групп, к которым также принадлежит пользователь. Пользователи могут принадлежать максимум к 15 вторичным группам.
Зачем нужна первичная группа? Разрешения пользователя такие же, как разрешения основной группы?
Представьте, что моему пользователю не назначена основная группа, а я нахожусь в 10 дополнительных группах. Я создаю новый файл ... к какой группе принадлежит этот файл? какой из этих 10? Основная группа решает эту проблему и определяет, к какой группе принадлежит файл по умолчанию. Вы не хотите, чтобы файлы, которые вы создаете в своем домашнем каталоге, принадлежали группе разработчиков, чтобы кто-либо в этой группе мог делать с ними все, что разрешено, как с группой.
Предположим, есть пользователь A с основной группой grp1 и пользователь B с основной группой grp2 и дополнительной группой grp1. Тогда может ли он иметь такое же разрешение, что и A, для файлов, созданных A?
Нет! только разрешения, определенные групповой частью. Конечно, это возможно. Используя umask
, например.
Каждый файл принадлежит одному пользователю и одной группе, не больше и не меньше. Таким образом, когда вы создаете файл, он будет принадлежать вашему пользователю и текущей группе. Когда пользователь входит в систему, его текущая группа будет его основной группой.
Пользователь может временно переключить группу на любую из своих дополнительных групп с помощью sg или newgrp . Пользователь может сделать это, не имея пароля группы, если он указан как вторичная группа для этого пользователя. При переключении созданные файлы будут принадлежать новой группе, а не пользователю.
Для разрешений первичная и вторичная группы используются вместе, нет необходимости переключать группы для доступа к файлу, принадлежащему одной из ваших вторичных групп.
Пользователи также могут изменить группу файла на любую из своих групп (первичную или вторичную) с помощью chgrp .
В этом смысле основная группа - это немного больше, чем текущая группа «по умолчанию». За исключением того, что у пользователя должна быть основная группа, нет причин, по которым у него должна быть другая. Обычно для каждого нового пользователя создается новая группа, таким образом, новый пользователь не имеет доступа по умолчанию, кроме своих собственных пользовательских разрешений.
Из вашего вопроса:
Предположим, что есть пользователь A с основной группой grp1 и пользователь B с основной группой grp2 и дополнительной группой grp1. Тогда могут ли они иметь такое же разрешение, что и A, для файлов, созданных A?
Пользователь B будет иметь права группы, назначенные файлам, созданным A. В этом сценарии A создает файлы только с grp1. Пользователь A может забрать любые / все разрешения у группы.