В наше время любая операционная система не считается полноценной, если в ней нет многопользовательского режима. Так и в Linux. Раньше в ОС существовало всего три основных флага, которые контролируют права доступа каждого конкретного пользователя, это – чтение, запись и непосредственно выполнение. Однако спустя время разработчики поняли, что этого недостаточно и создали специальные группы пользователей данной ОС. С их помощью сразу несколько человек способны получить возможность использовать один и тот же ресурс.
Способы добавления пользователей в группы
Абсолютно любой пользователь может выбрать первичную группу, которая будет являться основной, и побочные, в которые он может вступить по желанию. Стоит пояснить эти два понятия:
- Первичная (основная) группа создается сразу после регистрации в ОС. Это происходит автоматически. Пользователь вправе находиться лишь в одной первичной группе, имя которой чаще всего присваивается согласно введенному имени пользователя.
- Побочные группы являются дополнительными, и во время работы за компьютером могут изменяться. Однако не стоит забывать, что количество побочных групп строго ограничено и не может превышать 32.
Сейчас рассмотрим, как можно взаимодействовать с группами пользователей в дистрибутивах Linux.
Способ 1: Программы с графическим интерфейсом
К сожалению, ультимативной программы, которая имеет функцию добавления новых пользовательских групп, в дистрибутивах Linux нет. Ввиду этого, к каждой отдельной графической оболочке применяется разная программа.
KUser для KDE
Для добавления новых пользователей в группу в дистрибутивах Linux с графической оболочкой рабочего стола KDE используется программа Kuser, которую можно установить на компьютер, вписав в «Терминале» команду:
sudo apt-get install kuser
и нажав клавишу Enter.
Данное приложение имеет примитивный интерфейс, с которым удобно работать. Чтобы добавить пользователя в группу, вам необходимо сначала нажать двойным кликом по его имени, а затем, в появившемся окне, перейти во вкладку «Группы» и отметить галочками те, в которые вы хотите добавить выбранного пользователя.
«Менеджер пользователей» для Gnome 3
Что касается Gnome, то тут управление группами практически ничем не отличается. Вам лишь нужно установить соответствующую программу, которая идентична предыдущей. Разберем на примере дистрибутива CentOS.
Чтобы произвести установку «Менеджера пользователей», вам необходимо выполнить команду:
sudo yum install system-config-users
Открыв окно программы, вы увидите:
Для дальнейшей работы необходимо дважды кликнуть по имени пользователя и обратиться ко вкладке под названием «Группы», открывшейся в новом окне. В данном разделе вы можете самостоятельно выбрать именно те группы, которые вам интересны. Для этого необходимо лишь поставить галочки напротив понравившихся. Помимо этого вы можете выбрать или изменить основную группу:
«Пользователи и группы» для Unity
Как можно было заметить, использование выше представленных программ ничем не отличается. Однако для графической оболочки Unity, которая используется в дистрибутиве Ubuntu и является собственной разработкой создателей, управление группами пользователей слегка разнится. Но все по порядку.
Изначально установим необходимую программу. Делается это в автоматическом режиме, после выполнения следующей команды в «Терминале»:
sudo apt install gnome-system-tools
В случае, если вы желаете добавить либо удалить одну из имеющихся групп или пользователя, следует перейти в главное меню и нажать кнопку «Управление группами» (1). После проделанного перед вами появится окно «Параметры групп», в котором вы сможете увидеть список всех имеющихся в системе групп:
При помощи кнопки «Свойства» (2) можно с легкостью выбрать понравившуюся группу и внести в нее пользователей, просто отметив их галочкой.
Способ 2: Терминал
Для добавления новых пользователей в системах на базе Linux специалисты рекомендуют использовать терминал, так как данный способ предоставляет больше возможностей. В этих целях используется команда usermod — она позволит вам изменять параметры по собственному вкусу. Помимо прочего, неотъемлемым достоинством работы с «Терминалом» является его ультимативность — инструкция общая для всех дистрибутивов.
Синтаксис
Синтаксис команды не сложный и включает в себя три аспекта:
usermod опции синтаксис
Опции
Сейчас будут рассмотрены лишь основные опции команды usermod , которые позволяют добавлять новых пользователей в группы. Вот их перечень:
- -g – позволяет установить дополнительную основную группу для пользователя, однако такая группа уже должна быть, а все имеющиеся в домашней директории файлы автоматически перейдут в эту группу.
- -G – специальные добавочные группы;
- -a – позволяет выбрать пользователя из группы опции -G и добавить его в другие дополнительно выбранные группы, не совершая замену текущего значения;
Конечно, общее количество опций гораздо большее, однако мы рассматриваем только те, которые могут понадобиться для выполнения поставленной задачи.
Примеры
Сейчас перейдем к практике и на примере рассмотрим использование команды usermod . Например, вам необходимо добавить новых пользователей в группу sudo linux, для чего достаточно будет выполнить следующую команду в «Терминале»:
sudo usermod -a -G wheel user
Очень важно отметить тот факт, что если вы исключите из синтаксиса опцию –а и оставите лишь –G, то утилита автоматически уничтожит все те группы, которые были созданы вами ранее, а это может привести к неисправимым последствиям.
Рассмотрим простой пример. Вы стерли имеющуюся у вас группу wheel, добавляете пользователя в группу disk, однако после этого вам потребуется сбросить пароль, и вы больше не сможете пользоваться присвоенными вам ранее правами.
Для проверки информации о пользователе можно воспользоваться следующей командой:
После всего проделанного вы сможете увидеть, что дополнительная группа была добавлена, а все имеющиеся ранее группы остались на месте. В случае, если вы планируете добавить одновременно несколько групп, то стоит лишь разделить их между собой запятой.
sudo usermod -a -G disks,vboxusers user
Изначально при создании основная группа пользователя носит его имя, однако при желании его можно изменить на любое понравившееся, например, users:
sudo usermod -g users user
Таким образом вы видите, что имя основной группы поменялось. Аналогичные опции можно использовать в случае с добавлением новых пользователей в группу sudo linux, используя простую команду useradd.
Заключение
Из всего вышесказанного можно подчеркнуть то, что вариантов того, как добавить пользователя в группу Linux, много, и каждый хорош по-своему. Например, если вы неопытный пользователь или хотите быстро и легко выполнить поставленную задачу, то лучшим вариантом будет использование программ с графическим интерфейсом. Если же вы надумали вносить кардинальные правки в группы, то для этих целей необходимо использовать «Терминал» с командой usermod .
В данной заметке рассматривается как добавить пользователя в группу и как удалить из группы, вывод списка групп, в которых состоит пользователь, а также вывод всех пользователей и всех групп в системе Linux.
Список групп, в которых состоит пользователь
Для вывода списка групп, в которых состоит конкретный пользователь используется команда groups.
При выполнении команды groups без аргументов, выводится список групп текущего пользователя.
Можно указать имя пользователя, для которого нужно вывести список групп, в которых он состоит. Например, выведем группы, в которых состоит пользователь root.
Добавление пользователя в группу
Чтобы в Linux добавить существующего пользователя в группу используется команда usermod с ключами -a и -G группа . Например, добавим пользователя pingvinus в группу editorsgroup.
После выполнения данной команды пользователю pingvinus необходимо выйти и снова войти в систему. Можно воспользоваться командой su, чтобы войти от имени пользователя pingvinus в текущем сеансе.
Удаление пользователя из группы
Удалим пользователя pingvinus из группы editorsgroup.
Чтобы изменения вступили в силу, нужно выйти и войти в систему.
Список всех групп
Выведем список всех групп в текущей системе Linux.
Список всех пользователей
Выведем список всех пользователей в текущей системе Linux.
Обычно список довольно большой, так как содержит всех пользователей, включая пользователей, которые используются для запуска некоторых программ и служб.
Можно ограничить вывод только теми пользователями, для которых домашняя директория расположена в директории /home.
Учетные записи пользователей могут быть назначены одной или нескольким группам в Linux. Вы можете настроить права доступа к файлам и другие привилегии по группам. Например, на Ubuntu только пользователи из группы sudo могут использовать команду sudo для получения повышенных разрешений.
Как создать новую группу в Linux
Если вы хотите создать новую группу в своей системе, используйте команду groupadd, заменив new_group на имя группы, которую вы хотите создать. Вам также нужно будет использовать sudo с этой командой (или в дистрибутивах Linux, которые не используют sudo, вам нужно будет запустить команду su, чтобы получить повышенные разрешения перед запуском команды).
Добавление существующей учетной записи пользователя в группу
Чтобы добавить существующую учетную запись пользователя в группу в вашей системе, используйте команду usermod, заменив group_name на имя группы, в которую вы хотите добавить пользователя, в user_name на имя пользователя, которого хотите добавить.
Например, для добавления пользователя mial в группу sudo, используйте следующую команду:
Изменение первичной группы пользователя
Хотя учетная запись пользователя может входить в нескольких групп, одна из групп всегда является «основной группой», а остальные являются «вторичными группами». Процесс входа пользователя, файлы и папки, созданные пользователем, будут назначены первичной группе.
Чтобы изменить основную группу, которой назначен пользователь, запустите команду usermod, заменив group_name на имя группы, а user_name на имя учетной записи пользователя.
Обратите внимание здесь на -g. Когда вы используете маленькую g, вы назначаете главную группу. Когда вы используете заглавную -G , как в примерах выше, вы назначаете вторичную группу.
Как узнать, в какие группы входит пользователь
Чтобы просмотреть группы, которым назначена текущая учетная запись пользователя, выполните команду groups. Вы увидите список групп.
Чтобы просмотреть числовые идентификаторы, связанные с каждой группой, выполните команду id:
id
Для просмотра групп в которые входит другая учетная запись пользователя, запустите команду groups и укажите имя учетной записи пользователя.
Вы также можете просмотреть числовые идентификаторы, связанные с каждой группой, запустив команду id и указав имя пользователя.
Первой группой в списке групп или группой, показанной после «gid=» в списке идентификаторов, является первичная группа учетной записи пользователя. Другие группы – это вторичные группы. Итак, на скриншоте ниже основной группой учетной записи пользователя является mial.
Создание нового пользователя и назначение группы в одной команде
Иногда вам может понадобиться создать новую учетную запись пользователя, которая имеет доступ к определенному ресурсу или каталогу, например, новому пользователю FTP. С помощью команды useradd при создании учетной записи пользователя вы можете указать группы, которым будет назначена учетная запись пользователя, например:
Например, чтобы создать новую учетную запись пользователя с именем jsmith и назначить эту учетную запись группе ftp, вы должны запустить:
Конечно, вы захотите назначить пароль для этого пользователя:
Добавление пользователя в несколько групп
Вы можете добавить пользователя сразу в несколько вторичных групп, разделив список запятой:
Например, чтобы добавить пользователя с именем mial в группы ftp, sudo и example, вы должны запустить:
Вы можете указать столько групп, сколько хотите – просто разделите их все запятой.
Как просмотреть все группы в системе
Если вы хотите просмотреть список всех групп в вашей системе, вы можете использовать команду getent:
Этот вывод также покажет вам, какие учетные записи пользователей являются членами групп. Итак, на скриншоте ниже мы видим, что учетные записи пользователей syslog и mial являются членами группы adm.
Это должно охватывать все, что вам нужно знать о добавлении пользователей в группы в командной строке Linux.