Настраиваем процесс входа в систему на десктопе
prolinux
Опубликован: | 2023-06-20T04:40:26.953719Z |
Отредактирован: | 2023-06-20T04:40:26.953719Z |
Статус: | публичный |
Привет, Интернет... Хочу поделиться одним простеньким лайфхаком, речь пойдёт о настройке операционной системы с ядром Linux на десктопе, и в частности, о изменении порядка загрузки пользовательской сессии в графическом режиме при включении или перезагрузке компьютера. Как известно, пользовательская сессия защищена паролем, но мы вольны выбирать, когда и как будет запрошен пароль у пользователя, если работаем в графическом режиме. Сейчас расскажу как...
О задаче
Каждый пользователь компьютера со стационарным HDD знает, как долго машина загружается. Иногда мы просто включаем компьютер, и идём на пару минут заниматься другими повседневными мелкими делами, которые можно решить за эти пару минут. А вернувшись к компьютеру обнаруживаем вместо готового к использованию графического рабочего стола всего лишь окно менеджера входа, с требованием ввести логин и пароль. Увы, после ввода собственных идентификаторов нам опять приходится ждать.
Менеджер входа можно настроить соответствующим образом, чтобы логин и пароль не запрашивались при входе, но в этом случае пока мы ходим, наш рабочий стол и документы на нём доступны всем ветрам. Дома, где нет случайных людей, это допустимо, но мы не всегда оказываемся дома.
Сейчас я расскажу, как сделать процесс загрузки полным и непрерывным, но при этом защитить рабочую сессию всё теми же логином и паролем, но только их ввод перенести, чтобы после ввода ничего уже не ждать, а садиться и работать.
Настоящий лайфхак актуален и действителен для пользователей операционных систем с ядром Linux, в которых в качестве менеджера входа используется программа LightDM. На моём компьютере, например, установлен Debian sid с рабочим столом LXDE, в текущем стабильном релизе (bookworm) описанный рецепт тоже будет работать. Приступим...
Настраиваем автоматический вход пользователя
Поскольку компьютер, о котором идёт речь в этом описании является персональным, мы можем настроить соответствующим образом менеджер входа LightDM, то есть автоматический вход на стадии загрузки определённого пользователя, указанного в настройках менеджера.
Где LightDM хранит актуальные настройки можно посмотреть следующей командой.
$ sudo lightdm --show-config
На моей системе эта команда выхлопывает на терминал следующий текст:
[Seat:*]
A greeter-session=lightdm-greeter
A greeter-hide-users=true
A session-wrapper=/etc/X11/Xsession
Sources:
A /usr/share/lightdm/lightdm.conf.d/01_debian.conf
B /etc/lightdm/lightdm.conf
Настройки хранятся в двух адресах, первый обозначен литерой A
, второй - B
. Первый адрес я буду править, в этот файл я должен вписать пару строчек, и в том числе указать имя пользователя, который будет осуществлять автоматический вход в систему без ввода идентификаторов. Имя пользователя можно уточнить командой whoami
, вот что она показывает в моём терминале.
$ whoami
newbie
Отлично... Имя пользователя мне известно, теперь необходимо открыть файл, указанный в адресе A
и отредактировать его. Открыть файл одного из системных каталогов с возможностью редактирования можно с использованием программы sudo и любого консольного текстового редактора, я буду использовать Vim, можно использовать Nano или любой другой.
$ sudo vim /usr/share/lightdm/lightdm.conf.d/01_debian.conf
В самый конец этого файла вписываю две дополнительные строчки следующего содержания:
autologin-user=newbie
autologin-user-timeout=0
В первой строчке в качестве значения я указал имя пользователя, которое мне показала программа whoami. Сохраняю изменения в файл.
Теперь текстовый редактор можно покинуть и для проверки настроек перезагрузить машину, компьютер загрузится без запроса логина и пароля на графический рабочий стол.
Защищаем графическую рабочую сессию паролем
У каждого графического рабочего стола есть список так называемой автозагрузки, в нём указаны программы, которые автоматически запускаются на стадии загрузки рабочего стола. На моей системе установлено графическое окружение LXDE.
Заблокировать текущую рабочую сессию можно при помощи программы XScreenSaver, установить её в систему можно такой командой:
$ sudo apt install xscreensaver
В составе этой программы есть программа-блокировщик рабочего стола, её вызов следует положить в список автозагрузки графической сессии LXDE, для этого открываю всё в том же текстовом редакторе следующий файл.
vim .config/lxsession/LXDE/autostart
В любом месте этого файла, можно в начало, можно в конец, дописываю следующие пару строчек:
@xscreensaver -no-splash
@xscreensaver-command -lock
Сохраняю изменения в файл и покидаю текстовый редактор. Всё, рабочий стол защищён паролем, после перезагрузки компьютер выйдет на рабочий стол, а xscreensaver автоматически заблокирует экран, и когда вы вернётесь с чаем (или кофе), вы увидите на экране компьютера картинку хранителя экрана, подвигаете курсором мыши, или нажмёте любую клавишу на клавиатуре, и обнаружите запрос на ввод пароля.
А уж после ввода пароля не нужно будет ничего ждать, рабочий стол уже загружен и готов к работе. Таким образом разрыв в процессе загрузки компьютера устранён, при этом рабочий стол закрыт паролем, и злоумышленник, если получит доступ к вашей машине, пока вы наливаете себе чай, останется неудовлетворённым. Задача решена.
Выводы и умозаключения
Разрыв в процессе загрузки компьютера на ввод логина и пароля можно исключить, при этом паролем нужно защитить рабочий стол, если к компьютеру есть доступ посторонних людей. С такой блокировкой великолепно справляется программа XScreenSaver и соответствующая команда в списке автозагрузки графической сессии рабочего стола.
Продемонстрированный процесс настройки актуален для систем начиная с Debian bookworm и рабочим столом LXDE, на системах более ранних выпусков я не знаю, будет ли этот вариант работать.