Как создать группу linux
Как создавать группы в Linux (команда groupadd)
В Linux группы используются для организации и администрирования учетных записей пользователей. Основная цель групп — определить набор привилегий, таких как разрешение на чтение, запись или выполнение для данного ресурса, которые могут быть совместно использованы пользователями внутри группы.
Синтаксис команды groupadd
Общий синтаксис команды groupadd следующий:
Только root или пользователь с привилегиями sudo могут создавать новые группы.
Создание группы в Linux
Чтобы создать новую группу, введите groupadd за которым следует имя новой группы.
Например, чтобы создать новую группу с именем mygroup вы должны запустить:
Если группа с таким именем уже существует, система напечатает сообщение об ошибке, подобное следующему:
Создание группы с определенным GID
В Linux и Unix-подобных операционных системах группы идентифицируются по имени и уникальному GID (положительное целое число).
Вы можете проверить GID группы, перечислив все группы и отфильтровав результат с помощью grep :
Если группа с данным GID уже существует, вы получите следующую ошибку:
Создание системной группы
Нет никакой реальной технической разницы между системой и обычными (обычными) группами. Обычно системные группы используются для некоторых специальных целей работы системы, таких как создание резервных копий или обслуживание системы.
Переопределение значений /etc/login.defs по умолчанию
По сути, все, что вы можете переопределить, — это максимальное и минимальное значения идентификаторов нормальной и системной группы для автоматического выбора GID при создании новой группы.
Допустим, вы хотите создать новую группу с GID в диапазоне от 1200 до 1500. Для этого укажите минимальные / максимальные значения, как показано ниже:
Создание системной группы с паролем
Добавление пароля в группу не имеет практического смысла и может вызвать проблемы с безопасностью, поскольку пароль потребуется знать нескольким пользователям.
Выводы
Те же инструкции применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian, Fedora и Arch Linux.
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
Как в Linux добавить пользователя в группу (или вторичную группу)
Учетные записи пользователей могут быть назначены одной или нескольким группам в Linux. Вы можете настроить права доступа к файлам и другие привилегии по группам. Например, на Ubuntu только пользователи из группы sudo могут использовать команду sudo для получения повышенных разрешений.
Как создать новую группу в Linux
Если вы хотите создать новую группу в своей системе, используйте команду groupadd, заменив new_group на имя группы, которую вы хотите создать. Вам также нужно будет использовать sudo с этой командой (или в дистрибутивах Linux, которые не используют sudo, вам нужно будет запустить команду su, чтобы получить повышенные разрешения перед запуском команды).
Добавление существующей учетной записи пользователя в группу
Чтобы добавить существующую учетную запись пользователя в группу в вашей системе, используйте команду usermod, заменив group_name на имя группы, в которую вы хотите добавить пользователя, в user_name на имя пользователя, которого хотите добавить.
Например, для добавления пользователя mial в группу sudo, используйте следующую команду:
Изменение первичной группы пользователя
Хотя учетная запись пользователя может входить в нескольких групп, одна из групп всегда является «основной группой», а остальные являются «вторичными группами». Процесс входа пользователя, файлы и папки, созданные пользователем, будут назначены первичной группе.
Чтобы изменить основную группу, которой назначен пользователь, запустите команду usermod, заменив group_name на имя группы, а user_name на имя учетной записи пользователя.
Как узнать, в какие группы входит пользователь
Чтобы просмотреть группы, которым назначена текущая учетная запись пользователя, выполните команду groups. Вы увидите список групп.
Чтобы просмотреть числовые идентификаторы, связанные с каждой группой, выполните команду id:
Для просмотра групп в которые входит другая учетная запись пользователя, запустите команду groups и укажите имя учетной записи пользователя.
Вы также можете просмотреть числовые идентификаторы, связанные с каждой группой, запустив команду id и указав имя пользователя.
Первой группой в списке групп или группой, показанной после «gid=» в списке идентификаторов, является первичная группа учетной записи пользователя. Другие группы – это вторичные группы. Итак, на скриншоте ниже основной группой учетной записи пользователя является mial.
Создание нового пользователя и назначение группы в одной команде
Иногда вам может понадобиться создать новую учетную запись пользователя, которая имеет доступ к определенному ресурсу или каталогу, например, новому пользователю FTP. С помощью команды useradd при создании учетной записи пользователя вы можете указать группы, которым будет назначена учетная запись пользователя, например:
Например, чтобы создать новую учетную запись пользователя с именем jsmith и назначить эту учетную запись группе ftp, вы должны запустить:
Конечно, вы захотите назначить пароль для этого пользователя:
Добавление пользователя в несколько групп
Вы можете добавить пользователя сразу в несколько вторичных групп, разделив список запятой:
Например, чтобы добавить пользователя с именем mial в группы ftp, sudo и example, вы должны запустить:
Вы можете указать столько групп, сколько хотите – просто разделите их все запятой.
Как просмотреть все группы в системе
Если вы хотите просмотреть список всех групп в вашей системе, вы можете использовать команду getent:
Этот вывод также покажет вам, какие учетные записи пользователей являются членами групп. Итак, на скриншоте ниже мы видим, что учетные записи пользователей syslog и mial являются членами группы adm.
Это должно охватывать все, что вам нужно знать о добавлении пользователей в группы в командной строке Linux.
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
В прошлом материале нашего цикла мы рассмотрели теоретические аспекты системы управления пользователями в Linux и теперь, располагая багажом необходимых знаний, можно переходить к практике. Несмотря на то, что мы традиционно рассматриваем работу в системах основанных на Debian, данный материал будет полезен пользователям любого Linux-дистрибутива, так как работа с учетными записями пользователей везде построена одинаково. Именно поэтому мы будем рассматривать только работу в командной строке, так как она предоставляет единый и универсальный интерфейс вне зависимости от используемого окружения.
Создание пользователей
Для создания пользователей используется команда useradd, но не будем спешить с ее применением, сначала ознакомимся с используемыми по умолчанию параметрами, для этого выполните:
Здесь мы можем увидеть место размещения домашних каталогов, оболочку по умолчанию и каталог с шаблоном домашней директории /etc/skel. Эта директория будет полностью скопирована в директорию нового пользователя и содержит базовые настройки окружения пользователя. Вы можете воспользоваться этим, если вам нужно формировать определенную структуру домашних каталогов или применять какие-либо специфичные настройки. При этом не рекомендуется вносить изменения в оригинальный /etc/skel, рекомендуется сделать его копию (можно и не одну) в которую внести все необходимые изменения.
Также обратите внимание на параметр:
Но как нам известно в Debian пользовательские группы начинаются с 1000, а в RHEL c 500, поэтому в современных системах этот параметр игнорируется. Все параметры, кроме SKEL, могут быть изменены, но практический смысл это имеет только для HOME и SHELL.
Скажем вы настраиваете многопользовательский веб-сервер и хотите создавать домашние директории в каталоге веб-сервера, в этом случае можно выполнить:
А для изменения командной оболочки:
Чтобы добавить нового пользователя введите:
Ключ -m предписывает создать домашний каталог пользователя. Это самый простой вариант использования, но при использовании дополнительных ключей мы можем сразу задать или переопределить многие параметры пользователя. Получить их список можно командой:
Приведем некоторые из них:
Этой командой мы создадим пользователя ivanov, которому назначим домашнюю директорию в /var/www/ivanov, для которой будет использован шаблон из /etc/myskel, включим его в основную группу webuser и дополнительную www-data. Также запретим ему интерактивный вход в систему, назначив оболочкой /sbin/nologin.
Созданная учетная запись будет заблокирована до тех пор, пока мы не установим для нее пароль, это можно сделать следующей командой:
которая установит пароль к учетной записи ivan. Для блокировки пароля используйте:
Но учтите, что данная блокировка распространяется только на вход по паролю, если у пользователя настроены иные способы входа, скажем по SSH-ключу, то доступ в систему с их помощью сохранится. Поэтому данный способ следует использовать в тех случаях, когда есть подозрение на компрометацию пароля, но в полной блокировке учетной записи нет необходимости. Для разблокировки потребуется заново установить пароль.
Изменение пользователей
Для того, чтобы изменить параметры уже существующей учетной записи используется команда usermod, для ознакомления с ее возможностями получим список ключей командой
Приведем некоторые из них:
Данная команда создаст новый комментарий к учетной записи и добавит пользователя ivan в дополнительную группу sudo.
Удаление пользователей
Для удаления учетной записи пользователя используется команда userdel, например:
которая удалит учетную запись vasya.
Команда имеет дополнительные ключи, которые также можно просмотреть, запустив ее с ключом -h, практическую пользу представляют два из них:
На практике оба ключа обычно используются совместно, но будьте осмотрительны и перед удалением убедитесь, что удаляемые данные не нужны другим пользователям. Чтобы удалить пользователя вместе со всеми данными выполните:
При этом будет удален не только рабочий каталог, но и сообщения электронной почты пользователя, если таковые были в системе.
Управление группами пользователей
Для управления группами используется аналогичный набор команд: groupadd, groupmod и groupdel. Их ключи также можно посмотреть, запустив их с параметром -h.
Для создания группы используйте:
Из дополнительных ключей имеют практический смысл:
При помощи команды usermod мы можем изменить GUID и наименование группы, скажем:
Данная команда переименует группу office в группу sales. Используемые ключи:
Ну и наконец groupdel, который используется для удаления групп:
Из параметров можно использовать:
При удалении групп всегда нужно проявлять осмотрительность и не следует удалять группы, в которых состоят пользователи. Если же такая необходимость существует, то следует предварительно вывести из группы пользователей и изменить группу для всех объектов, которыми владела удаляемая группа.
Управление членством пользователей в группах
Управлять членством пользователей в группах можно различным образом. Выше мы уже приводили примеры с использованием usermod, для изменения основной группы пользователя используйте:
Данная команда изменит основную группу пользователя ivan на office. Для добавления в дополнительные группы следует выполнить команду:
Которая добавит пользователя ivan в группы office и sales.
Также существует и другая команда gpasswd, которая позволяет не только добавлять, но и удалять членство пользователей в группах. Для добавления пользователя в группу используйте:
Данная команда добавить пользователя ivan в группу office. Для удаления членства выполните:
Для того, чтобы проверить членство пользователя в группах используйте команду:
Чтобы быстро удалить пользователя из всех дополнительных групп используйте:
Как видим, управление пользователями и группами в Linux не такое уж и сложное дело, особенно когда вы понимаете, что значит тот или иной параметр и для чего вы это делаете.
Дополнительные материалы:
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
Как создать группы в Linux (команда groupadd)
Главное меню » Операционная система Linux » Как создать группы в Linux (команда groupadd)
В этой статье мы поговорим о том, как создавать новые группы в Linux, используя команду groupadd.
Синтаксис команды groupadd
Общий синтаксис команды groupadd выглядит следующим образом:
Только root или пользователь с привилегиями sudo могут создавать новые группы.
При вызове groupadd создает новую группу с использованием параметров, указанных в командной строке, а также значений по умолчанию, указанных в файле /etc/login.defs.
Создание группы в Linux
Для создания нового типа группы, после команды groupadd следует имя пользователя.
Например, чтобы создать новую группу с именем, andreyexgroup, вы должны выполнить:
Команда добавляет запись для новой группы к файлам /etc/group и /etc/gshadow.
Как только группа создана, вы можете начать добавлять пользователей в группу.
Если группа с таким именем уже существует, система выведет сообщение об ошибке, подобное следующему:
Создание группы с определенным GID
В Linux и Unix-подобных операционных системах группы идентифицируются по их имени и уникальному GID (положительное целое число).
По умолчанию при создании новой группы система назначает следующий доступный GID из диапазона идентификаторов групп, указанных в файле login.defs.
Например, чтобы создать группу с именем andreyexgroupGID 1010, введите:
Вы можете проверить GID группы, перечислив все группы и отфильтровав результат с помощью grep:
Если группа с данным GID уже существует, вы получите следующую ошибку:
Создание системной группы
Переопределение /etc/login.defs значений по умолчанию
По сути, все, что вы можете переопределить, – это максимальное и минимальное значения идентификаторов обычной и системной групп для автоматического выбора GID при создании новой группы.
Допустим, вы хотите создать новую группу с GID в диапазоне от 1200 до 1500. Для этого укажите минимальные/максимальные значения, как показано ниже:
Создание системной группы с паролем
Добавление пароля в группу не имеет практического применения и может вызвать проблемы с безопасностью, так как пароль должен знать более одного пользователя.
Заключение
В Linux вы можете создавать новые группы с помощью команды groupadd.
Те же инструкции применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian, Fedora и Arch Linux.
Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Пользователи и группы
Содержание
Управление пользователями
Добавление пользователя
Эта команда создаст в системе нового пользователя vasyapupkin. Чтобы изменить настройки создаваемого пользователя, вы можете использовать следующие ключи:
Параметры создания пользователя по умолчанию
Если при создании пользователя не указываются дополнительные ключи, то берутся настройки по умолчанию. Эти настройки вы можете посмотреть выполнив
Результат будет примерно следующий:
Если вас не устраивают такие настройки, вы можете поменять их выполнив
Изменение пользователя
usermod использует те же опции, что и useradd.
Изменение пароля
и ввести старый и новый пароли.
Основные ключи passwd:
Ключ | Описание |
---|---|
-d | Удалить пароль пользователю. После этого пароль будет пустым, и пользователь сможет входить в систему без предъявления пароля. |
-e | Сделать пароль устаревшим. Это заставит пользователя изменить пароль при следующем входе в систему. |
-i | Заблокировать учетную запись пользователя по прошествии указанного количества дней после устаревания пароля. |
-n | Минимальное количество дней между сменами пароля. |
-x | Максимальное количество дней, после которого необходимо обязательно сменить пароль. |
-l | Заблокировать учетную запись пользователя. |
-u | Разблокировать учетную запись пользователя. |
Установка пустого пароля пользователя
Супер пользователь с помощью утилит командной строки passwd и usermod или путем редактирования файла /etc/shadow может удалить пароль пользователь, дав возможность входить в систему без указания пароля.
Установка пустого пароля может быть полезна как временное решение проблемы в ситуации, когда пользователь забыл свой пароль или не может его ввести из-за проблем с раскладкой клавиатуры. После этого имеет смысл принудить пользователя установить себе новый пароль при следующем входе в систему
Получение информации о пользователях
Удаление пользователя
userdel имеет всего два основных ключа:
Ключ | Описание |
---|---|
-f | Принудительно удалить пользователя, даже если он сейчас работает в системе. |
-r | Удалить домашний каталог пользователя. |
Управление группами
Создание группы
Программа groupadd создаёт новую группу согласно указанным значениям командной строки и системным значениям по умолчанию. Пример использования:
Ключ | Описание |
---|---|
-g | Установить собственный GID. |
-p | Пароль группы. |
-r | Создать системную группу. |
Изменение группы
Ключ | Описание |
---|---|
-g | Установить другой GID. |
-n | Новое имя группы. |
-p | Изменить пароль группы. |
Удаление группы
Удаление группы происходит так:
groupdel не имеет никаких дополнительных параметров.
Файлы конфигурации
Изменять параметры пользователей и групп можно не только при помощи специальных утилит, но и вручную. Все настройки хранятся в текстовых файлах. Описание каждого из них приведено ниже.
/etc/passwd
В файле /etc/passwd хранится вся информация о пользователях кроме пароля. Одна строка из этого файла соответствует описанию одного пользователя. Примерное содержание строки таково:
Строка состоит из нескольких полей, каждое из которых отделено от другого двоеточием. Значение каждого поля приведено в таблице.
№ | Поле | Описание |
---|---|---|
1 | vasyapupkin | Имя пользователя для входа в систему. |
2 | x | Необязательный зашифрованный пароль. |
3 | 1000 | Числовой идентификатор пользователя (UID). |
4 | 1000 | Числовой идентификатор группы (GID). |
5 | Vasya Pupkin | Поле комментария |
6 | /home/vpupkin | Домашний каталог пользователя. |
7 | /bin/bash | Оболочка пользователя. |
Второе и последнее поля необязательные и могут не иметь значения.
/etc/group
В /etc/group, как очевидно из названия хранится информация о группах. Она записана в аналогичном /etc/passwd виде:
№ | Поле | Описание |
---|---|---|
1 | vasyapupkin | Название группы |
2 | x | Необязательный зашифрованный пароль. |
3 | 1000 | Числовой идентификатор группы (GID). |
4 | vasyapupkin,petya | Список пользователей, находящихся в группе. |
В этом файле второе и четвертое поля могут быть пустыми.
/etc/shadow
Файл /etc/shadow хранит в себе пароли, по этому права, установленные на этот файл, не дают считать его простому пользователю. Пример одной из записей из этого файла:
№ | Поле | Описание |
---|---|---|
1 | vasyapupkin | Имя пользователя для входа в систему. |
2 | $6$Yvp9VO2s$VfI0t.o754QB3HcvVbz5hlOafmO.LaHXwfavJHniHNzq/bCI3AEo562hhiWLoBSqxLy7RJJNm3fwz.sdhEhHL0 | Необязательный зашифрованный пароль. |
3 | 15803 | Дата последней смены пароля. |
4 | 0 | Минимальный срок действия пароля. |
5 | 99999 | Максимальный срок действия пароля. |
6 | 7 | Период предупреждения о пароле. |
7 | Период неактивности пароля. | |
9 | Дата истечения срока действия учётной записи. |
Управление пользователями и группами через GUI
В текущей версии Ubuntu отсутствует штатная утилита управления группами пользователей системы, поэтому по умолчанию все действия с группами необходимо выполнять в консоли. Однако для этих целей существует специальная утилита «Пользователи и группы».
Установка
Пакет gnome-system-tools находится в репозитории Ubuntu, поэтому ставится одной командой:
Управление группами
Для добавления, удаления групп, а также добавления\удаления пользователей в\из конкретных групп, необходимо в главном окне нажать кнопку «Управление группами», после чего вы увидите окно, отображающее все присутствующие в системе группы: в котором выбрав нужную группу и нажав «Свойства» можно отметить галочкой пользователей, которых необходимо внести в группу.