Skip to content

Проблема с отображением пользователя на экране приветствия GDM

Баг-репорт: https://bugzilla.altlinux.org/48825

Связанные баг-репорты:

Краткое описание

Установка приложения fwupd поломало отображение списка пользователей на экране входа в GNOME Анализ показал:

что в списке пользователей в gnome-control-center у пользователя стоит признак выключенной учётной записи;

в результате работы утилиты dSpy обнаружили что флаг активности учётной записи берётся из последней записи файла /etc/shadow где фигурирует пользователь fwupd-refresher:!*:, а знак ! - используется системой как интерпретация блокировки пользователя;

проверили гипотезы на предмет удаления этого символа, далее добавления нового айтема в конец списка - и гипотезы подтвердились, именно это и послужило причиной блокировки пользователя в gnome-control-center а так-же исключения нашего пользователя из списка доступных на экране авторизации (входа, логина);

Обходное решение (workaround)

Пока специалисты решают данную проблему, нами предложено обходное решение:

shell
su -
nano /etc/shadow

Добавьте в конец файла пользователя/пользователей:

shell
nobody:*:19709::::::
fwupd-refresh:!*:19709::::::
username:*:19709:::::: # [!code ++]

При внесении изменений в файл /etc/shadow:

  • замените username на имя вашего пользователя
  • число может быть +/- любым, но не больше текущей даты
  • После внесения изменений, сохраните файл Ctrl + X

После внесённых изменений:

  • Появится возможность использовать функцию автологина
  • Сменить имя пользователя (влияет на отображение на экране входа / блокировки экрана)

Внимание

Данное действие является с точки зрения использование операционной системы небезопасными, но связи с ошибкой #48825 одним из самых простых для вывода списка пользователей на экране входа.

Описание структуры записи в файле /etc/shadow:

username:$6$.n.:17736:0:99999:7:::
[------] [----] [---] - [---] ----
    |       |     |   |   |   |||+-----------> 9. Неиспользованный
    |       |     |   |   |   ||+------------> 8. Срок годности
    |       |     |   |   |   |+-------------> 7. Период бездействия
    |       |     |   |   |   +--------------> 6. Период предупреждения
    |       |     |   |   +------------------> 5. Максимальный возраст пароля
    |       |     |   +----------------------> 4. Минимальный возраст пароля
    |       |     +--------------------------> 3. Последнее изменение пароля
    |       +--------------------------------> 2. Зашифрованный пароль
    +----------------------------------------> 1. Имя пользователя

Видео

Авторы

История изменений