- How to Add User to Group in Linux
- Linux Groups #
- How to Add an Existing User to a Group #
- How to Add an Existing User to Multiple Groups in One Command #
- How to Remove a User From a Group #
- How to Create a Group #
- How to Delete a Group #
- How to Change a User’s Primary Group #
- How to Create a New User and Assign Groups in One Command #
- Display User Groups #
- Conclusion #
- Как добавить пользователя в группу Linux
- Основные группы в Linux
- Добавляем пользователя в группу с помощью приложений
- Gnome
- LXQT
- Добавляем пользователя в группу с помощью терминала
How to Add User to Group in Linux
In this tutorial, we will explain how to add a user to a group in Linux systems. We will also show you how to remove a user from a group and how to create, delete, and list groups.
Linux Groups #
Linux groups are organization units that are used to organize and administer user accounts in Linux. The primary purpose of groups is to define a set of privileges such as reading, writing, or executing permission for a given resource that can be shared among the users within the group.
There are two types of groups in Linux operating systems:
- The Primary group – When a user creates a file, the file’s group is set to the user’s primary group. Usually, the name of the group is the same as the name of the user. The information about the user’s primary group is stored in the /etc/passwd file.
- Secondary or supplementary group — Useful when you want to grant certain file permissions to a set of users who are members of the group. For example, if you add a specific user to the docker group, the user will inherit the group’s access rights and be able to run docker commands.
Each user can belong to exactly one primary group and zero or more secondary groups.
Only root or users with sudo access can add a user to a group.
How to Add an Existing User to a Group #
To add an existing user to a secondary group, use the usermod -a -G command followed the name of the group and the user:
sudo usermod -a -G groupname username
For example, to add the user linuxize to the sudo group, you would run the following command:
sudo usermod -a -G sudo linuxize
Always use the -a (append) option when adding a user to a new group. If you omit the -a option, the user will be removed from any groups not listed after the -G option.
On success, the usermod command does not display any output. It warns you only if the user or group doesn’t exist.
How to Add an Existing User to Multiple Groups in One Command #
If you want to add an existing user to multiple secondary groups in one command, use the usermod command followed by the -G option name of the group separated by , (commas):
sudo usermod -a -G group1,group2 username
How to Remove a User From a Group #
To remove a user from a group, use the gpasswd command wit the -d option.
In the following example, we are removing the user username from the group groupname :
sudo gpasswd -d username groupname
How to Create a Group #
To create a new group , use the groupadd command followed by the group name:
How to Delete a Group #
To delete an existing group, use the groupdel command followed by the group name:
How to Change a User’s Primary Group #
To change a user primary group, use the usermod command followed by the -g option:
sudo usermod -g groupname username
In the following example, we are changing the primary group of the user linuxize to developers :
sudo usermod -g developers linuxize
How to Create a New User and Assign Groups in One Command #
The following useradd command creates a new user named nathan with primary group users and secondary groups wheel and developers.
sudo useradd -g users -G wheel,developers nathan
Display User Groups #
To display complete user information, including all the groups of which a user is a member of, use the id command followed by the username:
If you omit the username, the command will print the information about the currently logged-in user. Let’s check the user linuxize :
uid=1000(linuxize) gid=100(users) groups=100(users),10(wheel),95(storage),98(power),990(libvirt),993(docker),999(kvm)
From the output above, we see that the primary group of the user is users and it belongs to wheel , storage , libvirt , docker , and kvm supplementary groups.
Use the groups command to display the user’s supplementary groups:
wheel storage power users libvirt docker kvm
If no username is passed to the groups command, it will print the currently logged in user’s groups.
Conclusion #
In this tutorial, we have shown you how to add a user to a group.
The same commands apply for any Linux distribution, including Ubuntu, CentOS, RHEL, Debian, and Linux Mint.
Feel free to leave a comment if you have any questions.
Как добавить пользователя в группу Linux
Рассказываем о группах в системе Linux и о том, как добавить в них пользователей.
Основные группы в Linux
В операционных системах на базе Linux выделяют определенный набор групп, который является основой:
- adm — группа администратора, позволяющая его участникам читать логи в соответствующих директориях.
- cdrom — группа пользователей, которым разрешено пользоваться дисковым приводом.
- wheel — группа, участникам которой можно выполнять команду sudo, то есть выполнять действия от лица администратора-суперпользователя.
- plugdev — те пользователи, что находятся в этой группе, могут монтировать внешние накопители: флешки и жесткие диски.
- sys — это группа, участники которой имеют полный доступ к исходному коду ядра системы и данным в файлах include.
- games — игры, запущенные пользователям из этой группы, могут писать в систему настройки и прочие данные.
- list — группа пользователей, которым разрешено просматривать сообщения, которые хранятся в директории /var/mail.
- proxy — в эту группу добавляют прокси-серверы. Участникам этой группы запрещено записывать файлы на жесткий диск компьютера.
- src — пользователи, находящиеся в этой группе могут изменить любой файл в директории /usr/src.
- disk — аналог получения root-прав.
Это не все группы, существующие в Linux по умолчанию — есть и другие варианты. Более того, пользователь может создавать свои группы и выдавать им определенные права. Но сейчас не об этом. Разберемся в том, как все-таки добавить пользователя в определенную группу.
Добавляем пользователя в группу с помощью приложений
В зависимости от оболочки, по умолчанию в дистрибутиве могут быть установлены разные утилиты для управления пользователями и группами. Я расскажу о двух наиболее популярных и удобных. О том, как их установить и как ими пользоваться.
Gnome
В системных инструментах рабочего стола Gnome есть программа для работы с пользователями и группами. Покажу, как использовать ее на примере дистрибутива Ubuntu 18.04. Чтобы ее установить:
На рабочем столе есть вот такая кнопка, где расположены все загруженные в систему программы. В KDE же есть аналог меню «Пуск» из Windows с таким же списком
Нам нужен терминал. В Gnome он так и называется. В KDE вы можете наткнуться на другой вариант: QTerminal. Суть одна и та же
Такая команда сработает только в дистрибутивах, где используется пакетный менеджер apt. Это касается Ubuntu и других производных от Debian (нужно уточнять). В Fedora, например, вместо apt-get нужно писать yum, а в Arch Linux — pacman -s.
Пока будете вводить пароль, помните, что он не отображается, и его нужно набирать вслепую
- После окончания установки заходим в список приложений, ищем там программу «Пользователи» и запускаем ее.
В списке программ должна появиться вот такая программа
Выбирать конкретного пользователя перед этим не нужно
- В открывшемся списке выделяем группу, в которую хотим добавить пользователя и нажимаем на кнопку «Свойства».
Нужная нам кнопка расположена в боковой панели справа
- Потом ставим галочки напротив пользователей, которых хотим добавить в группы, в блоке настроек «Члены группы».
У меня тут есть небольшой изъян с отображением. По идее этот список должен выглядеть более наглядно
LXQT
Если в вашем дистрибутиве установлена оболочка LXQT (это Lubuntu, например) или вы просто хотите использовать компоненты из этой оболочки для управления пользователями, то можно проделать следующее:
- Для начала подключим репозиторий с компонентами рабочего стола LXQT. Если этого не сделать, то загрузить программы, связанные с оболочкой просто не получится. Для этого открываем терминал и вводим туда команду sudo add-apt-repository ppa:lubuntu-ppa/ppa.
- Дожидаемся ее завершения. Затем вводим команду sudo apt-get update, чтобы обновить список новым репозиторием и его содержимым.
- После этого вписываем команду sudo apt-get install lxqt-admin. Она установит утилиту для управления пользователями из оболочки LXQT.
- По умолчанию она может не появиться в списке установленных программ, и для ее запуска придется ввести в терминал команду lxqt-admin-user.
- Перед нами появится графический интерфейс программы. В нем ищем вкладку «Группы» и переходим туда.
Как видите, интерфейс мало чем отличается от стандартного
- Затем выбираем одну из групп, в которую хотим добавить пользователя, и кликаем по ней дважды.
- Потом ставим галочку напротив пользователя, которого хотим добавить в выбранную группу и нажимаем ОК.
Тут интерфейс попроще и работает нормально
Добавляем пользователя в группу с помощью терминала
Вышеперечисленные методы работают и подходят большинству, но они привязывают к определенным оболочкам и программам, которые еще нужно установить. А не каждому хочется загружать на свой компьютер лишние приложения. И этого можно избежать, если использовать универсальный и самый гибкий инструмент управления дистрибутивами Linux — терминалом.
Функции управления пользователями и группами идентичны во всех дистрибутивах Linux, поэтому дальнейшие инструкции можно применять хоть в Ubuntu, хоть в Slackware. Разницы не будет.
Для управления пользователями используется команда usermod. Помимо нее в командную строку вписывают дополнительные параметры, а также название группы и имя пользователя.
Вот, например, команда для добавления пользователя parallels в группу wheel: sudo usermod -a -G wheel parallels.
sudo — это запуск с правами администратора, usermode — сама команда, -а — опция, которая добавляет пользователя в дополнительные группы, не удаляя из других, -G — опция, которая организует данные пользователя в добавочных группах, wheel — название группы, parallels — имя пользователя.
Если использовать опцию -g вместе двух других, то пользователь попадет в группу и зацепит с собой все файлы, директории и прочие связанные с ним данные.
Вот как такая команда может выглядеть в терминале
После добавления пользователя в группу можно проверить, оказался он там или нет. Для этого введем в терминал команду id и имя пользователя. После этого в командной строке отобразится список всех групп, в которых числится пользователь.
Вот как может выглядеть выдача команды id