Как посмотреть список пользователей в Linux? Рассказываем, где хранятся учётные данные и какие команды нужны, чтобы вывести их в консоль, как просмотреть список активных пользователей, узнать время последнего входа в систему и даже всю историю сеансов. Также объясняем, как получить доступ к параметрам пользователей через графический интерфейс.
Современные операционные системы, в том числе и Linux, позволяют создать больше одного пользователя и назначить каждому собственные права и уровень доступа. Это удобно и для администрирования, и для одновременной работы в системе.
Рассказываем, как посмотреть список пользователей Linux, а также получить информацию об их учётных данных и активности в системе.
Где хранится список пользователей Linux
Сам список находится в файле /etc/passwd, чтобы просмотреть его, откройте файл в любом текстовом редакторе. Также с помощью нескольких консольных утилит из него можно извлечь информацию и вывести её в терминал.
Команда cat /etc/passwd
Запустите терминал и введите «cat /etc/passwd», команда выведет информацию об учётных записях Linux. Каждая строка соответствует одному пользователю:
Как читать список
Данные в списке структурированы, значения разделены символом «двоеточие»:
- вначале указан логин Linux,
- затем пароль (он скрыт, обозначен как «Х» и хранится в файле /etc/shadow),
- UID (Unique identifier или User identifier) — уникальный идентификатор, система различает пользователей именно по ID, а не по логину,
- GID (Group ID) — групповой идентификатор, каждый пользователь Linux является членом как минимум одной группы,
- ячейка для комментария (можно указать контактные данные, имя службы или любые значимые сведения),
- домашний каталог,
- указывает на наличие/отсутствие доступа к командной оболочке.
Псевдопользователи Linux
Большая часть пользователей, перечисленных на скриншоте, — системные или псевдопользователи. Это учётные записи, созданные Linux для работы внутренних процессов и служб. Пользователи, которых создал администратор, называются локальными. Чтобы отличить системных юзеров от локальных, обратитесь к UID: учётки, созданные системой, имеют UID < 1000, у остальных значение будет ≥ 1000. UID администратора равен нулю. Кроме того, псевдопользователей в списке можно вычислить по параметру «nologin» в конце строки, означающему, что они не могут войти в систему.
Команда «getent passwd»
Выводит список, аналогичный предыдущему, но в данном случае мы обращаемся к утилите getent. Инструмент помогает получить записи из баз данных passwd и group, где хранятся данные о пользователях.
Услуги хостинга и аренды VPS/VDS с опцией «Всё включено» у провайдера AdminVPS избавят вас от необходимости администрирования сервера — её на себя возьмут наши специалисты.
Как просмотреть имена пользователей Linux
Ниже перечислены несколько способов просмотреть список логинов.
Инструмент CompGen
Утилита сформирует список, в который войдут только логины, а вся дополнительная информация будет отсечена. Для этого введите в командной строке:
«compgen» с флагом «-u»
Команда cut
«Вырезает» выбранные поля из каждой строки файла. Нам нужно первое поле, поэтому добавим флаг «-f1». Опция «-d:» сообщает, что поля разделены двоеточием. В конце добавляем файл-источник.
cut -d: -f1 /etc/passwd
Инструмент sed
SED — потоковый текстовый редактор, который может искать, заменять, вставлять, удалять содержимое текстовых файлов, не открывая их. Нам нужен следующий вариант команды:
sed 's/:.*//' /etc/passwd
Утилита awk
С её помощью можно не только выполнить поиск определённого слова или шаблона, но и выделить строку или столбец из файла:
getent passwd | awk -F: '{ print $1}'
Информация о действиях и сеансах
Список всех, кто подключён в данный момент
- Самый простой способ вывести список всех активных сеансов — утилита who, которая выводит текущий список активных пользователей компьютерной системы и сопутствующую информацию:
Данные выводятся в виде таблицы, где первый столбец — это имя, далее — способ подключения, затем — время начала сеанса и хост.
Если способ подключения обозначен двоеточием и числом, то используется GUI (открыт сеанс рабочего стола), если поле содержит значение «pts» (Pseudo Terminal Slave) и число, то соединение происходит через SSH и виртуальный терминал. В скобках после времени начала сеанса указан хост. Двоеточие и число указывают на локальный вход (в этом случае они будут дублировать поле со способом подключения), для удалённых подключений приводится IP-адрес.
- Директива «users». Команда по результатам похожа на «who», но выводит только логины, поэтому подходит, когда будет достаточно краткой справки о сеансах.
- Команда «pinky» без дополнительных опций выведет список всех авторизованных в данный момент пользователей.
- Также список вошедших пользователей выводит команда «w». Эта утилита предоставляет расширенную информацию, в том числе текущую активность (в момент проверки) и нагрузку на сервер, которая создаётся.
Последняя активность
Last
Инструмент для просмотра истории сессий по UID или терминалу. Чтобы вывести всю историю входов/выходов, используйте:
last -F -w -x
Посмотреть список удалённых сеансов:
last -d -F -w -x
История сеансов определённого пользователя:
last «username»
Lastlog
Выведет в виде списка имена пользователей и их последние входы в систему Linux.
Пользователь с определённым именем
Чтобы узнать, существует ли пользователь Linux с конкретным именем (в примере это «username») и выборочно вывести информацию о нём, введите в терминале:
getent passwd | grep «username»
Если применять «pinky» с флагом «-l» и «username», то отобразятся данные только об одной учётке.
Список пользователей Linux в GUI
Для тех, кто привык работать через GUI, тоже есть удобные способы. Мы продемонстрируем их на примере оболочки рабочего стола GNOME, в других средах порядок действий может быть другим.
Раздел «Пользователи»
- Нажмите на «Обзор» в левом верхнем углу рабочего стола, в строке поиска введите «Настройки». Зайдите в раздел с настройками.
- Затем в левом вертикальном меню выберите «Пользователи»:
- В области справа нажмите «Разблокировать»:
После этого вы сможете создавать новых пользователей, редактировать настройки и просматривать их список.
Приложение Gnome system tools
Список можно посмотреть не только через раздел настроек, но и в специальном приложении, предназначенном для управления учётными записями и группами. Чтобы установить его, введите в терминал:
apt install gnome-system-tools
Когда программа установится, запустите её.
Окно приложения имеет две области: в одной находится список пользователей Linux и инструменты для его изменения, а во второй — параметры выбранной учётной записи.
Теперь вы знаете, как узнать всех пользователей Linux.
Читайте в блоге: