Автологин с блокировкой сеанса
Будучи вдали от рабочего места, но имея к нему доступ по сети, порой хочется странного. Например, доступности веб-интерфейса qbittorrent, который стартует уже из пользовательского графического сеанса — а тот не запущен; бедную же функционалом «трансмиссию» ставить желания нет.
С другой стороны, если обеспечить автовход в графическую среду после перезагрузки, такой сеанс оказывается открыт всем и каждому: заходите, люди добрые, берите что хотите! То есть, сеанс этот следует немедленно после автовхода заблокировать.
Но всё решаемо — покажу на примере автовхода в Плазму.
В меню КДЕ ⇾ Настройки ⇾ Параметры системы открыть раздел «Сеанс»:
- Подраздел «Вход в систему (LightDM)»
- внизу включить Автоматический вход для нужного пользователя с желаемой средой.
- Подраздел «Вход в систему (SDDM)»
- кнопка внизу [Ξ Поведение…],
- поставить галочку «Автоматически входить в систему»,
- выбрать пользователя из списка «под именем».
Перейти выше, в раздел «Автозапуск»:
- меню справа-сверху «+ Добавить»,
- пункт субменю «+ Сценарий входа в систему…»,
- в открывшемся файл-менеджере выбрать скрипт, который привожу ниже.
Состряпал простецкий скрипт, пригодный для блокировки любого DE, запущенного через любой DM:
| /usr/local/bin/lockautologin |
|---|
#!/bin/sh
# Lock session if system booted less than a minute before
# (comment this line to lock always):
[ $[`sed 's|\..*||' /proc/uptime`/60] -gt 1 ] ||
loginctl lock-session
|
Как видно из комментария, автовхожую сессию он блокирует исключительно после перезагрузки, пока система ещё и минуты не проработала. То есть, к примеру, перезапуск сессии приводит к автовходу в неё без блокировки.
Чтобы сессия блокировалась после каждого её перезапуска, достаточно закомментировать предпоследнюю строку (ту, что над командой loginctl lock-session).
Какой вариант пригоднее в вашей ситуации, решайте сами.