- Как в Linux включить автоматических вход в систему (GDM, LightDM, SDDM)
- Как узнать какой используется менеджер отображения
- Автоматический вход в GDM
- Настройка входа без пароля в GDM
- Автоматический вход в LightDM
- Настройка автоматического входа в XFCE с менеджером отображения LightDM
- Как настроить автоматический вход в Linux с SDDM
- Связанные статьи:
- Рекомендуемые статьи:
- 4 Комментарии
- Автологин с блокировкой сеанса
- Автологин с блокировкой сеанса
Как в Linux включить автоматических вход в систему (GDM, LightDM, SDDM)
При загрузке в Linux сначала запускает менеджер отображения (Display Manager), который просит нас ввести имя пользователя и пароль, и в случае ввода верных данных, он запускает окружение рабочего стола.
Настройка автоматического входа в Linux чуть различается в зависимости от того, какой именно менеджер отображения вы используете. Самые популярные это GDM и LightDM.
То есть настройку входа в Linux без пароля нужно начать с определения, какой именно запущен Display Manager.
Как узнать какой используется менеджер отображения
Для этого выполните команду:
systemctl status display-manager.service
Будет выведена примерно следующая информация:
● gdm.service - GNOME Display Manager Loaded: loaded (/usr/lib/systemd/system/gdm.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2018-08-03 06:15:18 UTC; 1h 50min ago Main PID: 490 (gdm) Tasks: 3 (limit: 4915) Memory: 8.4M CGroup: /system.slice/gdm.service └─490 /usr/bin/gdm авг 03 06:15:18 HackWare systemd[1]: Starting GNOME Display Manager. авг 03 06:15:18 HackWare systemd[1]: Started GNOME Display Manager. авг 03 06:15:27 HackWare gdm-password][737]: pam_unix(gdm-password:session): session opened for user mial by (uid=0)
Информация о менеджере отображения содержится сразу в нескольких местах, например, в первой строке GNOME Display Manager — это полное название GDM.
Таким образом, у меня это GDM. У вас может быть, например, LightDM.
Автоматический вход в GDM
Для начала убедимся, что используется менеджер отображения GDM:
systemctl status display-manager
gdm.service — GNOME Display Manager
подтверждает, что в данной ОС используется GDM.
Вход в Linux с GDM (стиль и фоновые изображения могут различаться в других дистрибутивах Linux):
Для включения автоматического входа с GDM, откройте файл /etc/gdm3/daemon.conf:
sudo gedit /etc/gdm3/daemon.conf
# Enabling automatic login # AutomaticLoginEnable = true # AutomaticLogin = user1
Раскомментируйте вторую и третью строку.
Затем в третьей строке замените user1 на имя пользователя ОС Linux, для которого должен выполняться автоматический вход. Вы можете узнать имя пользователя следующей командой:
В моём случае имя пользователя mial, тогда строки выглядят следующим образом:
# Enabling automatic login AutomaticLoginEnable = true AutomaticLogin = mial
Перезагрузитесь — после этого должен выполняться автоматический вход без ввода пароля.
Настройка входа без пароля в GDM
Примечание: возможно, этот раздел устарел и больше не работает.
Если вы ходите, чтобы запрос ввода пароля не появлялся в GDM, тогда добавьте следующую строку в начало файла /etc/pam.d/gdm-password:
auth sufficient pam_succeed_if.so user ingroup nopasswdlogin
Затем добавьте группу nopasswdlogin в вашу систему. Для этого выполните
sudo groupadd nopasswdlogin
Теперь добавьте своего пользователя в группу nopasswdlogin:
sudo usermod -a -G nopasswdlogin $USER
После этого вам будет достаточно кликнуть на вашем имени пользователя для входа.
Предупреждения:
- Не делайте это с аккаунтом root.
- Вы больше не сможете изменить тип вашей сессии при входе в GDM. Если вы хотите поменять ваш тип сессии по умолчанию, вам нужно сначало удалить вашего пользователя из группы nopasswdlogin.
Автоматический вход в LightDM
Для автоматического входа в LightDM откройте конфигурационный текстовый файл /etc/lightdm/lightdm.conf:
sudo gedit /etc/lightdm/lightdm.conf
Найдите там раздел [Seat:*] (или может называться [SeatDefaults]), а в этом разделе две закомментированные строки:
#autologin-user= #autologin-user-timeout=0
Раскомментируйте их (уберите символ # в начале строки), а также после autologin-user впишите имя пользователя, для которого должен выполняться автоматический вход, например, если это пользователь root, тогда строки выглядят так:
autologin-user=root autologin-user-timeout=0
Если вы не знаете или забыли имя пользователя системы Linux, то вы можете узнать его выполнив в терминале команду:
Если файл lightdm.conf вовсе отсутствует, то создайте его:
sudo gedit /etc/lightdm/lightdm.conf
[Seat:*] autologin-guest=false autologin-user=mial autologin-user-timeout=0
Обратите внимание на директиву autologin-user и имя пользователя, которое идёт за ней – mial. Вам, конечно, нужно заменить это имя на собственное имя пользователя системы.
Теперь откройте файл /etc/pam.d/lightdm-autologin:
sudo gedit /etc/pam.d/lightdm-autologin
auth required pam_succeed_if.so user != root quiet_success
auth required pam_succeed_if.so user != anything quiet_success
Перезагрузитесь — после этого должен выполняться автоматический вход без ввода пароля.
Если не сработало, для проверки, применяются ли настройки из конфигурационного файла lightdm.conf выполните команду:
/usr/sbin/lightdm --show-config
Настройка автоматического входа в XFCE с менеджером отображения LightDM
Примечание: возможно, этот раздел устарел и больше не работает.
Рассмотрим вариант включения автоматического входа, когда рабочим столом является XFCE, а менеджер отображения — LightDM.
Откройте файл /etc/lightdm/lightdm.conf и отредактируйте (не забудьте раскомментировать) или просто добавьте строки:
[Seat:*] pam-service=lightdm pam-autologin-service=lightdm-autologin autologin-user=ИМЯ_ПОЛЬЗОВАТЕЛЯ autologin-user-timeout=0 session-wrapper=/etc/X11/Xsession greeter-session=lightdm-greeter
В этих строках нужно заменить заполнитель ИМЯ_ПОЛЬЗОВАТЕЛЯ на имя вашего пользователя. Если вы не знаете имя пользователя, то вы можете проверить его командой:
Также нужно создать группу autologin и добавить в неё вашего пользователя:
sudo groupadd -r autologin sudo gpasswd -a $USER autologin
Как настроить автоматический вход в Linux с SDDM
SDDM это менеджер отображения X11 и Wayland на основе QML.
В моих установках Linux менеджер отображения SDDM проявил себя лучше, чем GDM, LightDM. Поэтому если у вас возникли затруднения с другими менеджерами отображения, то попробуйте SDDM.
Убедимся, что в ОС используется именно SDDM:
systemctl status display-manager
sddm.service — Simple Desktop Display Manager
подтверждает, что в качестве менеджера отображения в данном Linux используется SDDM.
SDDM поддерживает автоматический вход с помощью конфигурационного файла данного менеджера отображения.
Для конфигурационного файла необходимо знать значения двух переменных:
- имя пользователя Linux, для которого будет выполняться автоматический вход
- имя сессии (какое окружение рабочего стола запустить)
Чтобы узнать имя текущего пользователя в ОС, выполните следующую команду:
В моём примере имя пользователя:
Чтобы узнать имена сессий для X, выполните команду:
Чтобы узнать имена сессий для Wayland, выполните команду:
ls -l /usr/share/wayland-sessions/
Я хочу использовать X сессию, в моей системе доступны:
Из этого списка я выбираю cinnamon.
Теперь нам нужно отредактировать файл /etc/sddm.conf.d/autologin.conf. Если этого файла нет, то создайте его. Возможно, директория /etc/sddm.conf.d/ также отсутствует в вашей системе. Если это так, то для начала создайте её:
Теперь открываем файл для редактирования или создаём его:
sudo gedit /etc/sddm.conf.d/autologin.conf
В этот файл добавьте следующие строки:
[Autologin] User=USER Session=SESSION
- USER — это имя пользователя
- SESSION — X или Wayland сессия
В моём случае получилось так:
[Autologin] User=mial Session=cinnamon
Сохраните и закройте файл.
Перезагрузите компьютер, чтобы убедиться, что теперь работает автоматический вход:
Связанные статьи:
Рекомендуемые статьи:
4 Комментарии
Здравствуйте! Не совсем понял…менеджер отображения у меня LightDM (Linux Debian). Надо создать файл lightdm.conf, а со старым что делать? Удалять? Он у меня очень большой! Пытался в нём изменить строку autologin-user= на себя,также требует пароль после перезагрузки!
Здравствуйте! Судя по всему, LightDM обновился и старая инструкция перестала работать. Я исправил инструкцию, проверил на своей системе — теперь вновь работает. Попробуйте — если что-то не получится, то напишите здесь.
Здравствуйте, Alexey!
В новой Lubuntu 22.04.01 user1, созданный при установке ОС, после вкл.компа сразу попадает на рабочий стол. Создал пользователя internet без прав sudo, для связи с внешним миром. Возникло крупное неудобство: каждый раз при смене пользователя нужно вводить пароль. Большая просьба, объясните, что сделать, чтоб входить просто по клику на иконку другого пользователя без ввода пароля, как было раньше в Lubuntu 16.04
ОС «из коробки», без правки каких-либо конфигурационных файлов. Vim — консольный текстовый редактор
менеджер отображения Simple Desktop Display Manager /etc/sddm.conf — автовход и среда раб. стола (можно сменить на LXQT)
содержание файла:
—————————————
[Autologin]
User=user1
Session=Lubuntu
————————————— С уважением, Олег.
Автологин с блокировкой сеанса
Будучи вдали от рабочего места, но имея к нему доступ по сети, порой хочется странного. Например, доступности веб-интерфейса qbittorrent, который стартует уже из пользовательского графического сеанса — а тот не запущен; бедную же функционалом «трансмиссию» ставить желания нет.
С другой стороны, если обеспечить автовход в графическую среду после перезагрузки, такой сеанс оказывается открыт всем и каждому: заходите, люди добрые, берите что хотите! То есть, сеанс этот следует немедленно после автовхода заблокировать.
Но всё решаемо — покажу на примере автовхода в Плазму через SDDM.
В меню КДЕ -> Настройки -> Параметры системы откроем раздел «Запуск и завершение»:
- Подраздел «Вход в систему (SDDM)»
- кнопка внизу [Ξ Поведение…],
- поставить галочку «Автоматически входить в систему»,
- выбрать пользователя из списка «под именем».
- Подраздел «Автозапуск»
- кнопка внизу [+ Добавить…],
- пункт субменю «+ Добавить сценарий входа…»,
- в открывшемся файл-менеджере выбрать скрипт, который привожу ниже.
Состряпал простецкий скрипт, пригодный для блокировки любого DE, запущенного через любой DM:
#!/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 ).
Какой вариант пригоднее в вашей ситуации, решайте сами.
Автологин с блокировкой сеанса
Будучи вдали от рабочего места, но имея к нему доступ по сети, порой хочется странного. Например, доступности веб-интерфейса qbittorrent, который стартует уже из пользовательского графического сеанса — а тот не запущен; бедную же функционалом «трансмиссию» ставить желания нет.
С другой стороны, если обеспечить автовход в графическую среду после перезагрузки, такой сеанс оказывается открыт всем и каждому: заходите, люди добрые, берите что хотите! То есть, сеанс этот следует немедленно после автовхода заблокировать.
Но всё решаемо — покажу на примере автовхода в Плазму через SDDM.
В меню КДЕ -> Настройки -> Параметры системы откроем раздел «Запуск и завершение»:
- Подраздел «Вход в систему (SDDM)»
- кнопка внизу [Ξ Поведение…],
- поставить галочку «Автоматически входить в систему»,
- выбрать пользователя из списка «под именем».
- Подраздел «Автозапуск»
- кнопка внизу [+ Добавить…],
- пункт субменю «+ Добавить сценарий входа…»,
- в открывшемся файл-менеджере выбрать скрипт, который привожу ниже.
Состряпал простецкий скрипт, пригодный для блокировки любого DE, запущенного через любой DM:
#!/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 ).
Какой вариант пригоднее в вашей ситуации, решайте сами.