Категории

Разбор /etc/systemd/logind.conf — Управление поведением системы при событиях питания и сессии

2025-12-03 08:02:10 | Статья из категории: Linux

Файл /etc/systemd/logind.conf управляет поведением демона systemd-logind, отвечающего за:

После изменений перезапустите службу:

sudo systemctl restart systemd-logind

Не забудьте раскомментировать строки (убрать #), чтобы параметры вступили в силу.

Важно: Все параметры по умолчанию либо закомментированы, либо используют значения по умолчанию, указанные в официальной документации systemd.

Основные параметры секции [Login]

NAutoVTs=

Количество автоматически создаваемых виртуальных терминалов (VT). По умолчанию — 6.

Если установить в 0, автоматические VT не будут создаваться.

ReserveVT=

Номер VT, зарезервированный для дисплейного менеджера (например, GDM, SDDM). По умолчанию — 6.

Этот терминал не будет использоваться для обычных автоматических сессий.

KillUserProcesses=

Завершать ли все процессы пользователя при выходе из сессии.

Возможные значения: yes / no (по умолчанию — no).

Полезно, если вы хотите, чтобы процессы (например, tmux, screen) не умирали после logout.

KillOnlyUsers=, KillExcludeUsers=

Фильтрация пользователей для KillUserProcesses.

  • KillOnlyUsers=alice,bob — завершать только процессы этих пользователей.
  • KillExcludeUsers=root,daemon — НЕ завершать процессы этих пользователей (даже если KillUserProcesses=yes).

По умолчанию исключён только root.

InhibitDelayMaxSec=

Максимальная задержка (в секундах) перед выполнением действия, если кто-то удерживает inhibit lock (например, воспроизведение видео).

По умолчанию — 5 секунд.

UserStopDelaySec=

Задержка перед уничтожением сессии после остановки пользователя (например, после loginctl terminate-user).

По умолчанию — 10 секунд.

HandlePowerKey=

Действие при нажатии кнопки питания (короткое).

Варианты: poweroff, reboot, halt, kexec, suspend, hibernate, hybrid-sleep, ignore.

По умолчанию — poweroff.

HandlePowerKeyLongPress=

Действие при удержании кнопки питания (обычно >3 сек).

По умолчанию — ignore (система сама выключится аппаратно при длительном удержании).

HandleRebootKey=

Действие при нажатии клавиши Ctrl+Alt+Del.

По умолчанию — reboot.

HandleRebootKeyLongPress=

Действие при удержании клавиши перезагрузки (если поддерживается).

По умолчанию — poweroff.

HandleSuspendKey=

Действие при нажатии клавиши «сна» (например, Fn+F4).

По умолчанию — suspend.

HandleSuspendKeyLongPress=

Действие при удержании клавиши «сна».

По умолчанию — hibernate.

HandleHibernateKey=

Действие при нажатии клавиши «гибернации» (если есть).

По умолчанию — hibernate.

HandleLidSwitch=

Действие при закрытии крышки ноутбука от батареи.

Варианты: suspend, hibernate, hybrid-sleep, ignore.

Ты установил: HandleLidSwitch=ignore → ничего не происходит.

HandleLidSwitchExternalPower=

То же, но когда ноутбук подключён к сети.

По умолчанию — suspend.

HandleLidSwitchDocked=

Поведение при закрытии крышки, если ноутбук подключён к док-станции.

По умолчанию — ignore (не спать, чтобы не прерывать внешние мониторы).

LidSwitchIgnoreInhibited=

Игнорировать ли обработку крышки, если кто-то удерживает inhibit-блокировку (например, видео в браузере).

По умолчанию — yes → крышка не вызовет сна, если идёт воспроизведение.

PowerKeyIgnoreInhibited= и аналоги

Определяют, должны ли соответствующие кнопки (питание, сон и т.д.) учитывать inhibit-блокировки.

По умолчанию — no для Power/Reboot/Suspend, yes для крышки.

IdleAction=, IdleActionSec=

Что делать, если система бездействует дольше указанного времени.

IdleActionSec=30min, IdleAction=poweroff → выключится через полчаса бездействия.

По умолчанию: IdleAction=ignore.

RemoveIPC=

Удалять ли IPC-объекты (разделяемую память, семафоры и т.д.) при выходе пользователя.

По умолчанию — yes.

Иногда ломает Java-приложения или PostgreSQL — тогда ставят no.

RuntimeDirectorySize=, RuntimeDirectoryInodesMax=

Ограничения для /run/user/$UID (временная файловая система per-user).

Пример: RuntimeDirectorySize=10% → 10% от RAM.

InhibitorsMax=, SessionsMax=

Максимальное число блокировок и сессий. По умолчанию — 8192.

Нужно только при экстремальных нагрузках или DoS-защите.

Заключение

Этот файл — мощный инструмент настройки поведения системы на «железные» события. Особенно полезен на ноутбуках, серверах или встраиваемых системах (например, твои IoT-проекты на ESP32 — хоть и не связаны напрямую, но понимание системного уровня помогает в проектировании всего стека).

Не бойся экспериментировать — но делай бэкап конфига:

sudo cp /etc/systemd/logind.conf /etc/systemd/logind.conf.bak

Комментарии

Пока нет комментариев. Будьте первым!

Оставить комментарий

← Назад к списку статей

Важно: Блог-эксперимент

Блог только запустил, все статьи генерирую через нейросеть т.к. лень, возможны ошибки. Просто чтобы вы знали и не запускали ядерный реактор по моим статьям ))
Если у вас есть вопросы, или Нашли неточность? пишите в коментах — вместе поправим и сделаем статью более качественной. Я лично объясню нюансы из практики.

Посетителей сегодня: 0


кто я | книга | контакты без контактов

© Digital Specialist | Не являемся сотрудниками Google, Яндекса и NASA