2.9.9.14 Управление сеансами пользователей с помощью systemd-logind
Параметры настройки службы systemd-logind
Примеры настройки службы systemd-logind
Утилита loginctl
Синтаксис утилиты
Опции утилиты
Команды утилиты loginctl
Окружение
- Версия ОС: 7.3
- Конфигурация ОС: Рабочая станция
- Редакция ОС: Стандартная, Образовательная
- Версия ПО: systemd-249.17-2
Системная служба systemd-logind — это компонент системы инициализации systemd, который управляет сессиями пользователей и процессами входа в систему. Она отвечает за управление сеансами пользователей, а также за обработку событий, связанных с входом и выходом. Служба осуществляет управление терминалами, графическими сессиями и другими аспектами пользовательской аутентификации.
Основными функциями systemd-logind являются:
-
отслеживание пользователей, их сеансов, запущенных процессов и состояния простоя;
-
запуск диспетчера пользовательских служб user@.service для каждого вошедшего пользователя;
-
генерирование уникальных идентификаторов сеансов (session IDs);
-
обеспечение переключения между пользовательскими сеансами;
-
автоматическое завершение процессов пользователей;
-
контроль и изоляция процессов в cgroups.
Параметры настройки службы systemd-logind
Основным файлом конфигурации, определяющим поведение службы systemd-logind, является файл /etc/systemd/logind.conf.
Параметры файла конфигурации:
-
Общие параметры:
-
NautoVTs=3— определяет количество виртуальных терминалов, предоставляемых по умолчанию (к ним можно обращаться с использованием сочетания клавиш Ctrl+Alt+[F2-F6]). В РЕД ОС предоставляется 6 виртуальных терминалов. Для изменения их количества необходимо раскомментировать данную строку и указать требуемое число терминалов; -
ReserveVT=— определяет один виртуальный терминал, который будет зарезервирован и останется доступным, даже если он не входит в диапазон параметраNAutoVTs=; -
KillUserProcesses=— определяет поведение процессов пользователей, вышедших из системы. Возможные значения параметра:-
yes— все процессы пользователя будут завершены при выходе из системы; -
no— все процессы пользователя продолжат свою работу даже после завершения сеанса;
-
-
KillExcludeUsers=(приKillUserProcesses=yes) — переопределяет действие параметраKillUserProcesses=, после выхода из сеанса для указанных пользователей процессы не будут завершены. Список пользователей разделяется пробелами; -
KillOnlyUsers=— переопределяет действие параметраKillUserProcesses=, после выхода из сеанса процессы будут завершены только для указанных пользователей. Список пользователей разделяется пробелами; -
InhibitDelayMaxSec=— задает максимальное время задержки запроса на выключение системы (в секундах) или переход в спящий режим. Значение по умолчанию — 5 секунд.
-
-
Параметры обработки кнопок питания:
-
HandlePowerKey=poweroff— задает действие при нажатии кнопки питания; -
HandleSuspendKey=suspend— задает действие при нажатии кнопки перевода в спящий режим; -
HandleHibernateKey=hibernate— задает действие при нажатии кнопки гибернации; -
HandleLidSwitch=suspend— задает действие при закрытии крышки ноутбука; -
HandleLidSwitchDocked=ignore— задает действие при закрытии крышки в док-станции.
Возможные значения параметров:
-
ignore— полное игнорирование события; -
poweroff— нормальное завершение работы и выключение компьютера; -
reboot— перезагрузка; -
halt— остановка системы при включенном питании; -
kexec— быстрая перезагрузка — загрузка через kexec без прохождения полного цикла перезагрузки UEFI; -
suspend— режим ожидания — состояние системы сохраняется в оперативной памяти; -
hibernate— режим гибернации — содержимое оперативной памяти сохраняется на диск (в swap), после чего питание полностью отключается; -
hybrid-sleep— гибридный сон — состояние системы сохраняется как в оперативной памяти, так и на диск. Позволяет быстро выйти из режима и не потерять данные при отключении питания; -
suspend-then-hibernate— выполнение режима ожидания suspend, затем автоматический переход в режим гибернации hibernate; -
lock— блокировка экрана; -
factory-reset— сброс до заводских настроек.
-
-
-
Параметры управления безопасностью и поведением сеансов:
-
HoldoffTimeoutSec=30s— задает время ожидания после запуска системы (в секундах) или возобновления работы системы, в течение которого система не реагирует на события. Такая задержка необходима для обнаружения системой устройств с горячим подключением. Значение по умолчанию — 30 секунд; -
IdleActionSec=30min— задает время, по истечении которого настроенное действие вIdleAction=будет выполняться; -
RuntimeDirectorySize=10%— определяет максимальный размер временных каталогов, создаваемых для пользователей во время работы системы. Принимает размер в байтах, допускается использование стандартных суффиксов K, M, G и T. Также значение может быть отображено в процентном соотношении. По умолчанию используется 10% физической памяти. Параметр может быть полезен для контроля использования дискового пространства и предотвращения переполнения диска; -
RemoveIPC=yes— отвечает за удаление межпроцессного взаимодействия (IPC) при выходе пользователя из системы. Если параметр установлен в значение yes, то все IPC-объекты, созданные пользователем, будут удалены при его выходе из системы; -
InhibitorsMax=8192— определяет максимальное количество процессов, которые могут быть заблокированы одновременно. Эти процессы могут быть заблокированы для предотвращения перезагрузки или выключения системы во время их выполнения. Если значение параметра указано 0, то блокировка процессов отключена. Если значение параметра установлено как отрицательное число, то количество заблокированных процессов не ограничено; -
SessionsMax=8192— определяет максимальное количество одновременных сеансов пользователя. Если значение параметра установлено в 0, то количество сеансов не ограничено. Если значение параметра больше 0, то это означает максимальное количество сеансов, которые пользователь может открыть одновременно. Если пользователь пытается открыть новый сеанс, когда уже достигнуто максимальное количество сеансов, то ему будет выдано сообщение об ошибке. Этот параметр может быть полезен для ограничения количества одновременных сеансов пользователей и повышения безопасности системы; -
IdleAction=ignore— отображает действие, которое необходимо выполнять, пока система находится в режиме ожидания. Возможные значения параметра:-
ignore— полное игнорирование события; -
poweroff— нормальное завершение работы и выключение компьютера; -
reboot— перезагрузка; -
halt— остановка системы при включенном питании; -
kexec— быстрая перезагрузка — загрузка через kexec без прохождения полного цикла перезагрузки UEFI; -
suspend— режим ожидания — состояние системы сохраняется в оперативной памяти; -
hibernate— режим гибернации — содержимое оперативной памяти сохраняется на диск (в swap), после чего питание полностью отключается; -
hybrid-sleep— гибридный сон — состояние системы сохраняется как в оперативной памяти, так и на диск. Позволяет быстро выйти из режима и не потерять данные при отключении питания; -
suspend-then-hibernate— выполнение режима ожидания suspend, затем автоматический переход в режим гибернации hibernate; -
lock— блокировка экрана.
-
-
С подробной информацией обо всех доступных параметрах конфигурационного файла службы systemd-logind можно ознакомиться, выполнив команду:
man logind.conf
Для применения внесенных в файл изменений перезапустите службу systemd-logind (потребуются права администратора):
sudo systemctl restart systemd-logind
Примеры настройки службы systemd-logind
Далее приведены варианты настроек конфигурационного файла /etc/systemd/logind.conf:
1. Блокировка экрана при бездействии 10 минут:
[Login]
IdleAction=lock
IdleActionSec=10min
2. Завершение всех процессов пользователя при выходе из сеанса:
[Login]
KillUserProcesses=yes
KillExcludeUsers=root
3. Отключение автоматического перехода в сон при закрытии крышки ноутбука:
[Login]
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
Утилита loginctl
loginctl — это утилита командной строки, позволяющая управлять сеансами пользователей и входящая в состав системы инициализации systemd.
Основные функции утилиты:
-
просмотр активных пользовательских сеансов;
-
управление пользователями (например, завершение их сеансов);
-
контроль состояния блокировки экрана;
-
управление терминалами и консолью;
-
получение подробной информации о сеансах и устройствах.
Синтаксис утилиты
Синтаксис утилиты loginctl выглядит следующим образом:
loginctl [<опция_утилиты>] <команда> [<параметр_команды>]
Опции утилиты
Основными опциями утилиты loginctl являются:
-
--no-ask-password— не запрашивать у пользователя пароль при выполнении операций, требующих повышенных привилегий; -
-p,--property=— показывать только определённое свойство (можно использовать несколько раз); -
-a,--all— показывать все свойства, даже пустые (в командах show-session, show-user, show-seat); -
--version— вывести версию утилиты; -
-H,--host=— выполнить операцию на удалённом хосте (через SSH); -
--no-pager— выводить результат сразу в терминал, не используя постраничный просмотр; -
-M,--machine=— выполнить операцию в указанном локальном контейнере.
Команды утилиты
Основными командами loginctl являются:
-
вывод списка всех активных сеансов:
loginctl list-sessions
-
вывод списка всех пользователей:
loginctl list-users
-
вывод информации об указанном сеансе:
loginctl show-session <идентификатор_сеанса> -
вывод информации об указанном пользователе:
loginctl show-user <имя_пользователя> -
запуск указанного сеанса:
loginctl activate <идентификатор_сеанса> -
завершение указанного сеанса:
loginctl terminate-session <идентификатор_сеанса> -
завершение всех сеансов указанного пользователя:
loginctl terminate-user <имя_пользователя> -
блокировка сеанса:
loginctl lock-session <идентификатор_сеанса> -
включение фоновых пользовательских сервисов:
loginct enable-linger <имя_пользователя> -
отключение фоновых пользовательских сервисов:
loginct disable-linger <имя_пользователя> -
отображение состояния пользователя:
loginct user-status <имя_пользователя> -
перевод системы в режим гибернации:
loginctl hibernate
-
перевод системы в спящий режим:
loginctl suspend
-
перевод системы в режим ожидания:
loginctl hybrid-sleep
Дата последнего изменения: 28.04.2026
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.