Учетные записи пользователей могут быть назначены одной или нескольким группам в Linux. Вы можете настроить права доступа к файлам и другие привилегии по группам. Например, на Ubuntu только пользователи из группы sudo могут использовать
sudo
для получения повышенных разрешений.
Добавить новую группу
Если вы хотите создать новую группу в своей системе, используйте
groupadd
команды следующую команду, заменив new_group на имя группы, которую вы хотите создать. Вам также нужно будет использовать sudo с этой командой (или в дистрибутивах Linux, которые не используют
sudo
вам нужно будет запустить
su
сама команда для получения повышенных разрешений перед запуском команды).
sudo groupadd mynewgroup
Добавление существующей учетной записи пользователя в группу
Чтобы добавить существующую учетную запись пользователя в группу в вашей системе, используйте
usermod
команда, заменяющая
examplegroup
с именем группы, в которую вы хотите добавить пользователя, и
exampleusername
с именем пользователя, которого вы хотите добавить.
usermod -a -G examplegroup exampleusername
Например, чтобы добавить пользователя
geek
группе
sudo
используйте следующую команду:
usermod -a -G sudo geek
Изменение первичной группы пользователя
Хотя учетная запись пользователя может быть частью нескольких групп, одна из групп всегда является «основной группой», а остальные являются «вторичными группами». Процесс регистрации пользователя и файлы и папки, созданные пользователем, будут назначены первичной группе.
Чтобы изменить основную группу, которой назначен пользователь, запустите
usermod
команда, заменяющая
examplegroup
с именем группы, которую вы хотите быть основным и
exampleusername
с именем учетной записи пользователя.
usermod -g groupname username
Обратите внимание
-g
Вот. При использовании строчной буквы g вы назначаете основную группу. Когда вы используете заглавные буквы
-G
как указано выше, вы назначаете новую вторичную группу.
Просмотр групп, для которых назначена учетная запись пользователя
Чтобы просмотреть группы, которым назначена текущая учетная запись пользователя, выполните
groups
команда. Вы увидите список групп.
groups
Чтобы просмотреть числовые идентификаторы, связанные с каждой группой, запустите
id
вместо этого:
id
groups
введите имя учетной записи пользователя.
groups exampleusername
Вы также можете просмотреть числовые идентификаторы, связанные с каждой группой, запустив
id
и укажите имя пользователя.
id exampleusername
Первая группа в
groups
списка или группы, показанной после «gid =» в
id
Список - это основная группа учетной записи пользователя. Другие группы - это вторичные группы. Итак, на скриншоте ниже, основная группа учетной записи пользователя
example
Создание нового пользователя и назначение группы в одной команде
Иногда вам может понадобиться создать новую учетную запись пользователя, которая имеет доступ к определенному ресурсу или каталогу, например, новому пользователю FTP. Вы можете указать группы, которым будет назначена учетная запись пользователя, при создании учетной записи пользователя с помощью
useradd
команда, вот так:
useradd -G examplegroup exampleusername
Например, чтобы создать новую учетную запись пользователя с именем jsmith и назначить эту учетную запись группе ftp, вы должны запустить:
useradd -G ftp jsmith
Конечно, вы захотите назначить пароль для этого пользователя:
passwd jsmith
Добавление пользователя в несколько групп
При назначении вторичных групп учетной записи пользователя вы можете легко назначить сразу несколько групп, разделив список запятой.
usermod -a -G group1,group2,group3 exampleusername
Например, чтобы добавить пользователя с именем geek в группы ftp, sudo и example, вы должны запустить:
usermod -a -G ftp,sudo,example geek
Вы можете указать столько групп, сколько хотите - просто разделите их все запятой.
Просмотреть все группы в системе
Если вы хотите просмотреть список всех групп в вашей системе, вы можете использовать
getent
команда:
getent group
Этот вывод также покажет вам, какие учетные записи пользователей являются членами групп. Итак, на скриншоте ниже мы видим, что учетные записи пользователей syslog и chris являются членами группы adm.