Добавление пользователя в группу. Списки пользователей и групп в Linux
В данной заметке рассматривается как добавить пользователя в группу и как удалить из группы, вывод списка групп, в которых состоит пользователь, а также вывод всех пользователей и всех групп в системе Linux.
Список групп, в которых состоит пользователь
Для вывода списка групп, в которых состоит конкретный пользователь используется команда groups.
При выполнении команды groups без аргументов, выводится список групп текущего пользователя.
# groups pingvinus adm cdrom sudo dip plugdev lpadmin sambashare
Можно указать имя пользователя, для которого нужно вывести список групп, в которых он состоит. Например, выведем группы, в которых состоит пользователь root.
# groups root root : root
Добавление пользователя в группу
Чтобы в Linux добавить существующего пользователя в группу используется команда usermod с ключами -a и -G группа . Например, добавим пользователя pingvinus в группу editorsgroup.
sudo usermod -a -G editorsgroup pingvinus
После выполнения данной команды пользователю pingvinus необходимо выйти и снова войти в систему. Можно воспользоваться командой su, чтобы войти от имени пользователя pingvinus в текущем сеансе.
# su - pingvinus # groups pingvinus adm cdrom sudo dip plugdev lpadmin sambashare editorsgroup
Удаление пользователя из группы
Удалим пользователя pingvinus из группы editorsgroup.
sudo gpasswd -d pingvinus editorsgroup
Чтобы изменения вступили в силу, нужно выйти и войти в систему.
Список всех групп
Выведем список всех групп в текущей системе Linux.
cut -d: -f1 /etc/group | sort
Список всех пользователей
Выведем список всех пользователей в текущей системе Linux.
cut -d: -f1 /etc/passwd
Обычно список довольно большой, так как содержит всех пользователей, включая пользователей, которые используются для запуска некоторых программ и служб.
root daemon bin sys sync games . nobody pingvinus
Можно ограничить вывод только теми пользователями, для которых домашняя директория расположена в директории /home.
cat /etc/passwd | grep '/home' | cut -d: -f1
Результат значительно короче.
syslog ntp pingvinus
Как добавить пользователя в группу в Linux
В этом руководстве мы объясним, как добавить пользователя в группу в системах Linux. Мы также покажем вам, как удалить пользователя из группы и как создавать, удалять и перечислять группы.
Группы Linux
Группы Linux — это организационные единицы, которые используются для организации и администрирования учетных записей пользователей в Linux. Основная цель групп — определить набор привилегий, таких как разрешение на чтение, запись или выполнение для данного ресурса, которые могут быть совместно использованы пользователями внутри группы.
В операционных системах Linux есть два типа групп:
- Основная группа — когда пользователь создает файл, группа файла устанавливается как основная группа пользователя. Обычно название группы совпадает с именем пользователя. Информация об основной группе пользователя хранится в /etc/passwd .
- Вторичная или дополнительная группа — полезно, когда вы хотите предоставить определенные права доступа к файлам набору пользователей, которые являются членами группы. Например, если вы добавите определенного пользователя в группу докеров, пользователь унаследует права доступа группы и сможет запускать команды докеров.
Каждый пользователь может принадлежать ровно к одной основной группе и нулю или более вторичных групп.
Только root или пользователи с доступом sudo могут добавлять пользователя в группу.
Как добавить существующего пользователя в группу
Чтобы добавить существующего пользователя во вторичную группу, используйте команду usermod -a -G после имени группы и пользователя:
sudo usermod -a -G groupname username
Например, чтобы добавить пользователя linuxize в группу sudo , вы должны выполнить следующую команду:
sudo usermod -a -G sudo linuxize
Всегда используйте параметр -a (добавить) при добавлении пользователя в новую группу. Если вы опустите опцию -a , пользователь будет удален из всех групп, не перечисленных после опции -G .
В случае успеха команда usermod не выводит никаких результатов. Он предупреждает вас только в том случае, если пользователь или группа не существует.
Как добавить существующего пользователя в несколько групп одной командой
Если вы хотите добавить существующий пользователь к нескольким вторичным группам в одной команде, используйте usermod команды , за которой следует -G названия опции группы , разделенной , (запятые):
sudo usermod -a -G group1,group2 username
Как удалить пользователя из группы
Чтобы удалить пользователя из группы, используйте команду gpasswd с параметром -d .
В следующем примере мы удаляем username из имени группы groupname :
sudo gpasswd -d username groupname
Как создать группу
Чтобы создать новую группу , используйте команду groupadd за которой следует имя группы:
sudo groupadd groupname
Как удалить группу
Чтобы удалить существующую группу, используйте команду groupdel за которой следует имя группы:
sudo groupdel groupname
Как изменить основную группу пользователя
Чтобы изменить основную группу пользователя, используйте команду usermod за которой следует параметр -g :
sudo usermod -g groupname username
В следующем примере мы меняем основную группу пользователя linuxize на developers :
sudo usermod -g developers linuxize
Как создать нового пользователя и назначить группы одной командой
Следующая команда useradd создает нового пользователя с именем nathan с users первичной группы и вторичными группами wheel и разработчиками.
sudo useradd -g users -G wheel,developers nathan
Показать группы пользователей
Чтобы отобразить полную информацию о пользователе, включая все группы, членом которых является пользователь, используйте команду id за которой следует имя пользователя:
id username
Если вы опустите имя пользователя, команда напечатает информацию о текущем вошедшем в систему пользователе. Проверим пользовательский linuxize :
id linuxize
uid=1000(linuxize) gid=100(users) groups=100(users),10(wheel),95(storage),98(power),990(libvirt),993(docker),999(kvm)
Из вывода выше мы видим, что основная группа пользователя — это users и она принадлежит к дополнительным группам wheel , storage , libvirt , docker и kvm .
Используйте команду groups для отображения дополнительных групп пользователя:
groups linuxize
wheel storage power users libvirt docker kvm
Если команде groups не передано имя пользователя, она распечатает группы пользователей, вошедших в систему.
Выводы
В этом руководстве мы показали вам, как добавить пользователя в группу.
Те же команды применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian и Linux Mint.
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
Как добавить пользователя в группу 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. Суть одна и та же
- В терминал вводим команду: sudo apt-get install -y gnome-system-tools.
Такая команда сработает только в дистрибутивах, где используется пакетный менеджер 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
Как добавить пользователя в группу на FreeBSD
При добавлении пользователей в отдельные группы можно просто изменять различные параметры учётной записи. Для этого нужно использовать команду PW . С помощью этого редактора на основе командной строки суперпользователь root может изменять пользователей и их группы в стандартизированной форме на FreeBSD. Такие как добавление, изменение и удаление пользователей и групп.
Root доступ необходим для редактирования системных файлов и выполнения команд. Войдите как root(su) или просто припишите sudo для всех команд, которые требуют привилегий суперпользователя.
Добавить нового пользователя в группу#
Добавить нового пользователя vasya в систему и добавить этого пользователя в группу clients.
pw useradd vasya -G clients