Перейти к содержимому

Восстановление после сбоев загрузки

Когда компьютер не загружается как обычно, это изрядно нервирует! Вот несколько способов восстановления:

Откат к предыдущей версии ОС

Если сбой загрузки начался после обновления системы, откат к предыдущей версии, как правило, устраняет его.

Для этого:

  1. Включите или перезагрузите компьютер.
  2. Удерживайте Пробел, пока не появится экран выбора версии ОС (белым текстом по центру экрана на чёрном фоне).
  3. Нажмите клавишу «стрелка вниз» один раз, чтобы выбрать предыдущую версию ОС, либо выберите любую другую.
  4. Нажмите Enter, чтобы загрузиться в неё.

Если это устранило проблему, сообщите о ней по адресу https://invent.kde.org/kde-linux/kde-linux/-/issues/ и приложите вывод команды journalctl --boot -1 --no-pager, выполненной в окне терминала.

Если это не помогло, можно поменять способ загрузки системы, отредактировав параметры командной строки ядра, — и применить разные подходы к отладке:

Изменение способа загрузки через командную строку ядра

Чтобы изменить командную строку ядра:

  1. Включите или перезагрузите компьютер.
  2. Удерживайте Пробел, пока не появится экран выбора версии ОС (белым текстом по центру экрана на чёрном фоне).
  3. Нажмите клавишу e.
  4. Появится текстовое поле с очень длинным содержимым — это и есть командная строка ядра.

Отключение расширений systemd

Добавьте systemd.mask=systemd-sysext.service в командную строку ядра и нажмите Enter.

Это полезно, если у вас есть активные расширения systemd и сбой загрузки начался после обновления содержимого одного из них — возможно, причина в этом. Временное отключение расширений должно снять проблему, пока вы не разберётесь, что не так с этим расширением.

Если это сработало, после входа в систему разберитесь, что не так с расширением, и исправьте это. Если не получается — отключите его.

Обход проблем с экраном входа или Plasma

Добавьте systemd.unit=multi-user.target в командную строку ядра и нажмите Enter.

Это полезно, если экран входа или Plasma не запускаются либо падают снова и снова: можно загрузиться в среду командной строки в обход обоих и вести отладку уже там.

Если в ходе отладки выяснится, что проблема возникла не из-за ваших действий, создайте сообщение об ошибке для команды KDE Linux, чтобы её изучили.

Вход в аварийную оболочку root

  1. Добавьте systemd.debug_shell=on SYSTEMD_SULOGIN_FORCE=1 в командную строку ядра и нажмите Enter.
  2. Дождитесь, пока экран станет чёрным и останется таким на несколько секунд.
  3. Нажмите Ctrl+Alt+F9 (примечание: на ноутбуке может также потребоваться удерживать Fn).

Теперь вы находитесь в аварийной оболочке root.

Если в ходе отладки выяснится, что проблема возникла не из-за ваших действий, создайте сообщение об ошибке для команды KDE Linux, чтобы её изучили.

Откат /etc

Бывает, что во время работы в какой-то сборке каталог /etc изменяется так, что становится несовместим с более старыми сборками.

После отката ОС это проявляется странными неполадками: чёрный экран или система не принимает пароль при входе.

Чтобы всё починить, замените сломанный /etc более старым рабочим — вот так:

  1. Получите оболочку любым из указанных выше способов и выполните следующие команды:
  2. run0 mv /etc /etc.broken
  3. run0 btrfs subvolume snapshot $(ls -d -1 /.etc.* | tail -2 | head -1) /etc
  4. systemctl reboot

Эти ручные действия перестанут быть нужны, когда будет решена задача https://invent.kde.org/kde-linux/kde-linux/-/issues/505.

Дополнительные сведения

Дополнительные параметры отладки см. на https://systemd.io/DEBUGGING. В KDE Linux используется исключительно systemd, поэтому все сведения на этой странице актуальны.


Статья предоставлена и распространяется под лицензией CC-BY-4.0.