Найти тему

Обновил до Debian 11 и получил "пустой" экран c мерцающим курсором

Debian 11
Debian 11

Пару дней назад запустил обновление системы, а оно говорит новая версия системы вышла и продолжать обновление не будет без моего согласия. Сразу не запускал, потому что скорее всего X server не запуститься при первом старте, так как у меня проприетарные драйвера NVidia установлены. Сегодня решился и запустил обновление. Сам пошёл за хлебом в ближайшую пекарню. Вернулся, система уже обновилась. Перезапустил и получил

Мигающий курсор на чёрном экране
Мигающий курсор на чёрном экране

Как и ожидал X Server не стартует. Надеюсь, что обойдётся переустановкой драйверов видеокарты. Сейчас проверю, что в логах написано. Открываю новый терминал комбинацией клавиш [Ctrl-Alt-F6]

-3

Зашёл под своим пользователем попытался найти ошибки командой "dmesg" и не нашёл. Я не знал, что искать, поэтому решил посмотреть в логе X Server'а (/var/log/Xorg.0.log) и нашёл ошибку инициализации модуля ядра NVIDIA

NVIDIA: Failed to initialize the NVIDIA kernel module.
NVIDIA: Failed to initialize the NVIDIA kernel module.

Следом за ней ошибка "no screens found". Вот и ответ. Осталось переустановить драйвер и должно заработать. Но сначала удалю всё, что связано с NVIDIA

sudo apt remove nvidia*

Apt выдала мне список модулей с подписью, что модуль не установлен, поэтому не может быть удалён

-5

Хорошо. Теперь установлю драйвер.

Из прошлых установок помню, что перед запуском драйверов, нужны были ещё какие-то действия. Поэтому решил залезть в руководство по установке драйверов NVIDIA от NVIDIA для Debian. Там написано, что перед запуском нужно установить заголовки ядра командой

sudo apt -y install linux-headers-$(uname -r) build-essential

Запускаю. Установщик жалуется на "build-essential" --- убираю и запускаю снова

sudo apt -y install linux-headers-$(uname -r)

Запустилось, но выдаёт ошибки. К сожелению я не заснял и запомнил какие. Но, тут я вспомнил про настройки "apt" и возможно они сохранились из старой системы. Залажу в файл "/etc/apt/sources.list" и точно там прописаны пути к прежней версии Debian. Я зашёл на сайт debian.org и нашёл там новость о вышедшей Debian 11 "Bullseye"

https://www.debian.org/News/2021/20210814

Думаю, что найду там подсказку. Нашёл подсказку под загаловком "Обновление Debian"

Обновление до Debian 11 с предыдущего выпуска, Debian 10 (кодовое имя buster), для большинства вариантов настройки осуществляется автоматически с помощью APT.
Для выпуска bullseye компонент с обновлениями безопасности теперь называется bullseye-security, пользователям следует изменить свои файлы источников APT соответствующим образом в ходе обновления. Если в ваших настройках APT используются закрепление или APT::Default-Release, то для этих параметров тоже скорее всего потребуются изменения. Дополнительную информацию смотрите в разделе Изменена структура архива безопасности в информации о выпуске.

Перехожу по ссылке и делаю как написано. Кроме того проверяю, чтобы в файле не упоминалась больше прежняя версия "buster" и везде была "bullseye". Готово. Запускаю

sudo apt update
sudo apt upgrade

Apt выдаёт кучу ошибок связанных с установленными мною программами в прежней системе и останавливается с просьбой запустить

sudo apt --fix-broken install

Что я и делаю. Всё успешно проходит. Перезапускаю систему и она успешно стартует с обновлёнными приложениями.

Мораль сей басни такова, что прежние программы то остались установленными, но с зависимостями от прежней системы. В том числе и драйвер от видеокарты. А, выше упомянутая, команда решает этот вопрос. Чем не раз меня спасала.

Самое то интересное, что я уже проделывал подобные шаги при обновлении с Debian 9 на Debian 10, но уже не помню так как это было больше 2-х лет назад.

Спасибо разработчикам APT и за опции "--fix-broken" и "--fix--missing" --- они офигенные!