Как посмотреть список пользователей и список групп пользователей Debian
Используя Dedian в консольной версии, (обычное дело на удалённом сервере), первым делом хочется определиться с настройками групповой политики. А для этого, в первую очередь нужно разобраться, какие группы пользователей уже созданы и есть в системе. Также неплохо сразу уметь посмотреть, какие пользователи есть в системе (хотя бы список пользователей). В этой статье рассмотрим как раз эти два вопроса: как посмотреть список групп пользователей и как посмотреть список пользователей в Debian в консоли с помощью простых команд.
Команда cat в Debian — самый простой способ посмотреть содержимое файла
Перед тем, как выводить списки пользователей и групп пользователей, разберёмся, с помощью чего их можно вывести и посмотреть. Забегая вперёд скажу, что эти списки хранятся в обычных текстовых файлах. И самым удобным способом на мой взгляд быстро просмотреть содержимое файла является команда cat . Эта команда читает данные из файла или стандартного ввода и выводит их на экран. Именно то, что нам нужно!
Где находится список групп пользователей Debian
Список групп пользователей Debian находится в папке etc в файле group . Полный путь от корня файловой системы до файла со списком групп пользователей стало быть будет: /etc/group . Теперь всё просто. Для того, чтобы вывести на экран список всех групп пользователей достаточно набрать в консоли:
После ввода этой команды будет выведено содержимое файла group . Групп пользователей в Debian достаточно много. При просмотре этого файла следует понимать, что название группы пользователей находится первым до первого символа : . Пока этого достаточно.
Где находится список пользователей Debian
Перейдём к следующему вопросу, как посмотреть список всех пользователей нашей операционной системы на сервере. Для этого нужно всего лишь знать (а лучше помнить), что все основные данные пользователей хранятся в файле passwd , находящемуся в папке etc . То есть полный путь до этого файла будет: /etc/passwd . Осталось только ввести команду
для того, чтобы посмотреть список всех пользователей. Имя пользователя, как и в случае со списком групп пользователей, будет в начале каждой строчки до первого символа : .
Подробная статья про то, как хранятся данные об учётных записях пользователей Linux в файле /etc/passwd по → этой ссылке.
Резюме
Таким образом, зная пути до двух ключевых файлов с помощью команды cat можно быстро найти и просмотреть список групп пользователей и список пользователей на сервере имея всего лишь обычный консольный доступ к нему.
Заберите ссылку на статью к себе, чтобы потом легко её найти!
Выберите, то, чем пользуетесь чаще всего:
Как вывести список пользователей в Linux
Вы когда-нибудь хотели перечислить всех пользователей в вашей системе Linux или подсчитать количество пользователей в системе? Есть команды для создания пользователя, удаления пользователя, вывода списка пользователей, вошедших в систему, но какова команда для вывода списка всех пользователей в Linux?
Это руководство покажет вам, как составить список пользователей в системах Linux.
Получите список всех пользователей с помощью файла /etc/passwd
Информация о локальном пользователе хранится в /etc/passwd . Каждая строка в этом файле представляет информацию для входа в систему для одного пользователя. Чтобы открыть файл, вы можете использовать cat или less :
Каждая строка в файле содержит семь полей, разделенных двоеточиями, которые содержат следующую информацию:
- Имя пользователя.
- Зашифрованный пароль ( x означает, что пароль хранится в /etc/shadow ).
- Идентификационный номер пользователя (UID).
- Идентификационный номер группы пользователя (GID).
- Полное имя пользователя (GECOS).
- Домашний каталог пользователя.
- Оболочка входа (по умолчанию /bin/bash ).
Если вы хотите отображать только имя пользователя, вы можете использовать команды awk или cut для печати только первого поля, содержащего имя пользователя:
Получите список всех пользователей с помощью команды getent
Команда getent отображает записи из баз данных, настроенных в файле /etc/nsswitch.conf , включая базу данных passwd , которую можно использовать для запроса списка всех пользователей.
Чтобы получить список всех пользователей Linux, введите следующую команду:
Как видите, вывод такой же, как и при отображении содержимого файла /etc/passwd . Если вы используете LDAP для аутентификации пользователей, getent отобразит всех пользователей Linux как из файла /etc/passwd и из базы данных LDAP.
Вы также можете использовать awk или cut для печати только первого поля, содержащего имя пользователя:
Проверить, существует ли пользователь в системе Linux
Теперь, когда мы знаем, как составить список всех пользователей, чтобы проверить, существует ли пользователь в нашем Linux-сервере, мы можем просто отфильтровать список пользователей, передав его по конвейеру команде grep .
Например, чтобы узнать, существует ли в нашей системе Linux пользователь с именем jack мы можем использовать следующую команду:
Если пользователь существует, приведенная выше команда распечатает информацию для входа в систему. Нет вывода, что означает, что пользователь не существует.
Мы также можем проверить, существует ли пользователь, не используя команду grep как показано ниже:
Как и раньше, если пользователь существует, команда отобразит информацию для входа в систему.
Если вы хотите узнать, сколько учетных записей пользователей у вас в системе, getent passwd вывод getent passwd команде wc :
Как видно из вышеприведенного вывода, в моей системе Linux 33 учетных записи пользователей.
Системные и обычные пользователи
Технической разницы между системой и обычными (обычными) пользователями нет. Обычно пользователи системы создаются при установке ОС и новых пакетов. В некоторых случаях вы можете создать системного пользователя, который будет использоваться некоторыми приложениями.
Обычные пользователи — это пользователи, созданные пользователем root или другим пользователем с привилегиями sudo. Обычно у обычного пользователя есть настоящая оболочка входа в систему и домашний каталог.
У каждого пользователя есть числовой идентификатор пользователя, называемый UID. Если не указан при создании нового пользователя с помощью команды useradd , UID будет автоматически выбран из файла /etc/login.defs зависимости от UID_MIN и UID_MIN .
Чтобы проверить значения UID_MIN и UID_MIN в вашей системе, вы можете использовать следующую команду:
Из выходных данных выше мы видим, что все обычные пользователи должны иметь UID от 1000 до 60000. Знание минимального и максимального значения позволяет нам запрашивать список всех обычных пользователей в нашей системе.
Команда ниже перечислит всех обычных пользователей в нашей системе Linux:
UID_MIN и UID_MIN вашей системы могут отличаться, поэтому более общая версия приведенной выше команды будет:
Если вы хотите распечатать только имена пользователей, просто направьте вывод в команду cut :
Выводы
В этом руководстве вы узнали, как составлять список и фильтровать пользователей в вашей системе Linux, а также каковы основные различия между системными и обычными пользователями Linux.
Те же команды применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian и Linux Mint.