GDM — это дисплейный менеджер для GNOME, графическая программа для логина пользователя, использующая Wayland или X Window System.

В дополнение к тому, что GDM — это графическая альтернатива входу через консоль, GDM также обладает следующими преимуществами:

По умолчанию, GDM запускается от лица непривилегированного пользователя и вход от имени root запрещен.


Управление демоном GDM

GDM — это такой же сервис, как и все остальные в системе, и им можно управлять с помощью команды systemctl.

Временно остановить GDM:

$ systemctl stop gdm

Проверить состояние GDM:

$ systemctl status gdm

Запустить GDM вручную:

$ systemctl start gdm

Всегда загружаться в консоль, а не в GDM:

$ systemctl set-default multi-user.target

Отменить предыдущую команду и загружаться напрямую в GDM:

$ systemctl set-default graphical.target

Проверить текущую цель загрузки:

$ systemctl get-default

Создать или отредактировать файл override.conf для GDM:

$ systemctl edit gdm

Далее см. Wiki-страницу systemd.


Настройка

Отключение Wayland

В Debian 10 и новее GDM будет загружать сессию Wayland по умолчанию при условии, что Wayland поддерживается на аппаратном уровне. Это поведение можно переопределить в файле /etc/gdm3/daemon.conf, раскомментировав строку WaylandEnable=false, что заставит GDM использовать X11.

Включение Wayland на NVIDIA

В Debian 12 Wayland отключен по умолчанию для ряда видеокарт. Это поведение контролируется файлом /lib/udev/rules.d/61-gdm.rules.

Введите следующую команду, чтобы сделать Wayland доступным в GDM:

# mv /lib/udev/rules.d/61-gdm.rules{,.bak}

после чего перезагрузитесь. Делайте это на свой страх и риск.

Изменение внешнего вида GDM

GDM v3.0+ допускает базовую кастомизацию, такую как смена лого, фона и темы GTK. Чтобы изменить эти параметры:

  1. Отредактируйте файл /etc/gdm3/greeter.dconf-defaults от имени root

  2. Раскомментируйте или укажите желаемые настройки
  3. Сохраните файл и закройте редактор
  4. И, наконец, запустите от имени root: dpkg-reconfigure gdm3

Команда 'dpkg-reconfigure gdm3' заставит GDM перезапуститься с учетом изменений в настройках при следующем выходе из сессии или перезагрузке.

Примечание: при смене фона GDM убедитесь, что файл с изображением доступен всем пользователям по указанному пути. Для этого указывайте абсолютный путь к файлу вместо относительного

Отключение автологина в GDM3 и включение более подробного вывода в GDM

Данная секция относится к GDM3 в GNOME 3 и новее.

$ dpkg -S /etc/gdm3/daemon.conf
gdm3: /etc/gdm3/daemon.conf

Данная команда позволяет узнать принадлежность файла.

Таким образом, файл должен выглядеть примерно так:-

    $ cat /etc/gdm3/daemon.conf
    # GDM configuration storage
    #
    # See /usr/share/gdm/gdm.schemas for a list of available options.

    [daemon]
    # Enabling automatic login
    AutomaticLoginEnable=true
    AutomaticLogin=$USERNAME

    # Enabling timed login
    #  TimedLoginEnable = true
    #  TimedLogin = user1
    #  TimedLoginDelay = 10

    # Reserving more VTs for test consoles (default is 7)
    #  FirstVT = 9

    [security]

    [xdmcp]

    [greeter]
    # Only include selected logins in the greeter
    # IncludeAll = false
    # Include = user1,user2

    [chooser]

    [debug]
    # More verbose logs
    # Additionally lets the X server dump core if it crashes
    Enable = false

При удалении пользователя вы не сможете войти в DE, особенно если включен автоматический вход. Обход данного бага:

    $ cat /etc/gdm3/daemon.conf
    # GDM configuration storage
    #
    # See /usr/share/gdm/gdm.schemas for a list of available options.

    [daemon]
    # Enabling automatic login
    AutomaticLoginEnable=false

    # Enabling timed login
    #  TimedLoginEnable = true
    #  TimedLogin = user1
    #  TimedLoginDelay = 10

    # Reserving more VTs for test consoles (default is 7)
    #  FirstVT = 9

    [security]

    [xdmcp]

    [greeter]
    # Only include selected logins in the greeter
    # IncludeAll = false
    # Include = user1,user2

    [chooser]

    [debug]
    # More verbose logs
    # Additionally lets the X server dump core if it crashes
    Enable = true


См. также


CategoryBootProcess