2.9.9.12 Управление сеансами пользователей с помощью systemd-logind
Скачать документSystemd-logind — системная служба, которая управляет сеансами пользователей в операционной системе.
Файлом конфигурации службы systemd-logind является logind.conf. Для редактирования файла необходимы права суперпользователя root.
Откройте файл командой:
nano /etc/systemd/logind.conf
Содержимое файла выглядит следующим образом:
[Login]
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#InhibitDelayMaxSec=5
#HandlePowerKey=poweroff
#HandleSuspendKey=suspend
#HandleHibernateKey=hibernate
#HandleLidSwitch=suspend
#HandleLidSwitchExternalPower=suspend
#HandleLidSwitchDocked=ignore
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
#LidSwitchIgnoreInhibited=yes
#HoldoffTimeoutSec=30s
#IdleAction=ignore
#IdleActionSec=30min
#RuntimeDirectorySize=10%
#RuntimeDirectoryInodes=400k
RemoveIPC=no
#InhibitorsMax=8192
#SessionsMax=8192
Основные моменты настройки systemd-logind:
Параметр NAutoVTs= отвечает за количество виртуальных терминалов, предоставляемых по умолчанию (к ним можно обращаться с использованием сочетания клавиш «Ctrl+Alt+F[2-6]»). В РЕД ОС предоставляется 6 виртуальных терминалов. Для изменения их количества необходимо раскомментировать данную строку и указать требуемое число терминалов. Например:
NAutoVTs=3
Параметр ReserveVT определяет один виртуальный терминал, который будет зарезервирован и останется доступным, даже если он не входит в диапазон параметра NAutoVTs.
Параметр KillUserProcesses отвечает за работу процессов пользователей, которые вышли из системы. Может принимать значения:
yes — все процессы пользователя будут завершены при выходе из системы;
no — процессы пользователя продолжат свою работу даже после завершения сеанса.
По умолчанию данный параметр установлен в значение no.
Параметры KillOnlyUsers, KillExcludeUsers переопределяют параметр KillUserProcesses и принимают в качестве значения разделенные пробелами имена пользователей.
Параметр KillExcludeUsers (при KillUserProcesses=yes) отменяет завершение процессов указанных пользователей после выхода из сеанса.
Параметр KillOnlyUsers завершает процессы только указанных пользователей после выхода из сеанса. Если значение параметра не задано, будет применяться параметр KillUserProcesses.
Параметр InhibitDelayMaxSec= задает максимальное время задержки запроса на выключение системы или переход в спящий режим. Значение по умолчанию равно 5 секунд.
Параметры HandlePowerKey=, HandleSuspendKey=, HandleHibernateKey=, HandleLidSwitch=, HandleLidSwitchExternalPower=, HandleLidSwitchDocked= отображают, каким образом logind обрабатывает запросы включения системы, перезагрузки и перехода в спящий режим, а также выключения и приостановки работы системы. Параметры могут принимать значения ignore, poweroff, reboot, halt, kexec, suspend, hibernate, hybrid-sleep, suspend-then-hibernate, lock и factory-reset.
Параметры PowerKeyIgnoreInhibited=, SuspendKeyIgnoreInhibited=, HibernateKeyIgnoreInhibited=, LidSwitchIgnoreInhibited= определяют, подлежат ли блокировке действия клавиш управления питанием, перехода в спящий режим или перезагрузки. Параметры могут принимать значения no (действия блокируются) или yes (действия не блокируются).
Параметр HoldoffTimeoutSec= задает время ожидания после запуска системы или возобновления работы системы, в течение которого система не реагирует на события. Такая задержка необходима для обнаружения системой устройств с горячий подключением. Значение по умолчанию 30 секунд.
Параметр IdleAction= отображает действие, которое необходимо выполнять, пока система находится в режиме ожидания. Может принимать такие значения, как ignore, poweroff, reboot, halt, kexec, suspend, hibernate, hybrid-sleep, suspend-then-hibernate и lock. Значение по умолчанию ignore.
Параметр IdleActionSec= задает время, по истечении которого настроенное действие в IdleAction= будет выполняться.
Параметр RuntimeDirectorySize= отвечает за максимальный размер временных каталогов, создаваемых для пользователей во время работы системы. Принимает размер в байтах, но можно использовать стандартные суффиксы K, M, G и T. Также значение может быть отображено в процентном соотношении. По умолчанию используется 10% физической памяти, но ее можно увеличить. Этот параметр может быть полезен для контроля использования дискового пространства и предотвращения переполнения диска.
Параметр RemoveIPC= отвечает за удаление межпроцессного взаимодействия (IPC) при выходе пользователя из системы. Если параметр установлен в значение yes, то все IPC-объекты, созданные пользователем, будут удалены при его выходе из системы.
Параметр InhibitorsMax= определяет максимальное количество процессов, которые могут быть заблокированы одновременно. Эти процессы могут быть заблокированы для предотвращения перезагрузки или выключения системы во время их выполнения. Если значение параметра указано 0, то блокировка процессов отключена. Если значение параметра установлено как отрицательное число, то количество заблокированных процессов не ограничено.
Параметр SessionsMax= определяет максимальное количество одновременных сеансов пользователя. Если значение параметра установлено в 0, то количество сеансов не ограничено. Если значение параметра больше 0, то это означает максимальное количество сеансов, которые пользователь может открыть одновременно. Если пользователь пытается открыть новый сеанс, когда уже достигнуто максимальное количество сеансов, то ему будет выдано сообщение об ошибке. Этот параметр может быть полезен для ограничения количества одновременных сеансов пользователей и повышения безопасности системы.
С подробной информацией об остальных параметрах файла можно ознакомиться, выполнив команду:
man logind.conf
По окончании редактирования конфигурационного файла для применения внесенных изменений следует перезагрузить ПК или перезапустить службу systemd-logind командой:
systemctl restart systemd-logind
Дата последнего изменения: 09.09.2024
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.