В Linux группы используются для организации и администрирования учетных записей пользователей. Основная цель групп – определить набор привилегий, таких как чтение, запись или выполнение разрешения для данного ресурса, которые могут быть общими для пользователей в группе.
В этой статье мы поговорим о том, как создавать новые группы в Linux, используя команду groupadd.
Синтаксис команды groupadd
Общий синтаксис команды groupadd выглядит следующим образом:
groupadd [OPTIONS] GROUPNAME
Только root или пользователь с привилегиями sudo могут создавать новые группы.
При вызове groupadd создает новую группу с использованием параметров, указанных в командной строке, а также значений по умолчанию, указанных в файле /etc/login.defs.
Создание группы в Linux
Для создания нового типа группы, после команды groupadd следует имя пользователя.
Например, чтобы создать новую группу с именем, andreyexgroup, вы должны выполнить:
groupadd andreyexgroup
Команда добавляет запись для новой группы к файлам /etc/group и /etc/gshadow.
Как только группа создана, вы можете начать добавлять пользователей в группу.
Если группа с таким именем уже существует, система выведет сообщение об ошибке, подобное следующему:
groupadd: group 'andreyexgroup' already exists
Чтобы подавить сообщение об ошибке, если группа существует, и успешно завершить команду, используйте параметр -f( –force):
groupadd -f andreyexgroup
Создание группы с определенным GID
В Linux и Unix-подобных операционных системах группы идентифицируются по их имени и уникальному GID (положительное целое число).
По умолчанию при создании новой группы система назначает следующий доступный GID из диапазона идентификаторов групп, указанных в файле login.defs.
Используйте опцию -g( –gid), чтобы создать группу с определенным GID.
Например, чтобы создать группу с именем andreyexgroupGID 1010, введите:
groupadd -g 1010 andreyexgroup
Вы можете проверить GID группы, перечислив все группы и отфильтровав результат с помощью grep:
getent group | grep andreyexgroup
andreyexgroup:x:1010:
Если группа с данным GID уже существует, вы получите следующую ошибку:
groupadd: GID '1010' already exists
При использовании с параметром -o( –non-unique) команда groupadd позволяет создать группу с неуникальным GID:
groupadd -o -g 1010 andreyexgroup
Создание системной группы
Нет реальной технической разницы между системной и обычной (нормальной) группой. Обычно системные группы используются для каких-то особых системных операций, таких как создание резервных копий или обслуживание системы.
GID системных групп выбирается из диапазона UD системных групп, указанного в файле login.defs, который отличается от диапазона, используемого для обычных групп.Используйте опцию -r( –system) для создания системной группы. Например, чтобы создать новую системную группу с именем, mysystemgroupвы должны выполнить:
groupadd -r mysystemgroup
Переопределение /etc/login.defs значений по умолчанию
Опция -K( –key), за которой следует, KEY=VAL позволяет переопределить значения по умолчанию, указанные в файле /etc/login.defs.
По сути, все, что вы можете переопределить, – это максимальное и минимальное значения идентификаторов обычной и системной групп для автоматического выбора GID при создании новой группы.
Допустим, вы хотите создать новую группу с GID в диапазоне от 1200 до 1500. Для этого укажите минимальные/максимальные значения, как показано ниже:
groupadd -K GID_MIN=1200 -K GID_MAX=1500 andreyexgroup
Создание системной группы с паролем
Добавление пароля в группу не имеет практического применения и может вызвать проблемы с безопасностью, так как пароль должен знать более одного пользователя.
Параметр -p( –password), за которым следует пароль, позволяет вам установить пароль для новой группы:
groupadd -p grouppassword andreyexgroup
Заключение
В Linux вы можете создавать новые группы с помощью команды groupadd.
Те же инструкции применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian, Fedora и Arch Linux.
Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.