Чёрный экран с курсором при старте GDM
На днях установил #Debian 11 на несколько ПК. Всё было отлично, кроме как на одном из ПК почему то #GDM не стал загружаться. Чёрный экран с мигающем текстовым курсором…
На других ПК всё было нормально. Отличие проблемного ПК от остальных заключалось в том, что на проблемном ПК система была установлена на #SSD. Может быть дело в этом. В интернете я нашёл похожую проблему. По сути, проблема заключается в том, что сам #GDM запускается чуть раньше, чем начинается инициализация графической подсистемы. И на кой чёрт его несёт вперёд…
В общем, предлагают несколько решений.
Настройка сервиса GDM
Данный вариант решения проблемы предлагает отредактировать стартовые параметры сервиса #GDM, чтобы тот запускался с небольшой задержкой и не лез вперёд остальной графической подсистемы.
В терминале нужно ввести от root’а команду systemctl edit gdm.service
, откроется редактор сервиса #GDM. В нем необходимо добавить строку ExecStartPre=/bin/sleep 2
, которая создаёт задержку перед запуском самого #GDM. Примерно вот так:
Таким образом GDM начинает запускаться после того, как инициализируется графическая подсистема.
Ещё одно исправление предложили в баг-трекере #GNOME / #GDM. Вместо торможения загрузки GDM, необходимо добавить следующие строки:
Но это не совсем корректное исправление (хотя исправление, изложенное выше, тоже трудно назвать правильным), так как после применения этих строк, появляется ошибка:
Указание порядка инициализации графической подсистемы
Этот вариант решения проблемы подходит для Arch Linux. Необходимо в файле /etc/mkinitcpio.conf
добавить в массив MODULES
свою графическую подсистему, чтобы та запускалась раньше, чем #GDM. Например:
Можно указать другие графические подсистемы, всё зависит от видеокарты, установленной в ПК:
amdgpu
- для современных видеокарт AMD.radeon
- для устаревших видеокарт AMD.nouveau
- для Nvidia Nouveau.i915
- для Intel.mgag200
- для видеокарт Matrox.
Если в системе используется #Intel в качестве графики и в модулях прописан i915
, то могут появится ошибки ACPI. Для исправления этих ошибок необходимо добавить intel_agp
перед i915
. Чтобы проверить корректность загрузки модуля, можно ввести команду lsmod | grep intel_agp
.