Решение проблемы: Live USB флэшка с Linux не загружается, ошибка «A start job is running for live-config contains the components that configure a live system during the boot process (late userspace)»


Debian является основой для многих дистрибутивов, поэтому если в самой Debian появляется какой-то баг, то он постепенно расползается сразу по нескольким дистрибутивам Linux.

Например, с ошибкой

A start job is running for live-config contains the components that configure a live system during the boot process (late userspace)

я уже сталкивался на Kali Linux, Parrot Security и Tails.

Ещё признаками этой проблемы являются ошибки со словом nouveau:

acpi device:13: Failed to change power state to D0
video LNXVIDEO:01: Cannot transition to power state D0 for parent in (UNKNOWN)
pci_raw_set_power_state: 24 callbacks suppressed
nouveau 0000:01:00.0: Refused to change power state, currently in D3
video LNXVIDEO:01: Cannot transition to power state D0 for parent in (UNKNOWN)
nouveau 0000:01:00.0: Refused to change power state, currently in D3
video LNXVIDEO:01: Cannot transition to power state D0 for parent in (UNKNOWN)

Как можно заметить, прямо перед этими ошибками видна запись

Reached target network

В системах, где выводятся не все сообщения, загрузка может остановится именно на этой надписи, но к рассматриваемой проблеме она не имеет отношения.

Суть проблемы в том, что записанная Live система на USB флэшку или диск не загружается. Если дистрибутив показывает сообщения системного журнала о загрузке, то вы можете видеть приведённую выше ошибку.

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

В этой статье я покажу как исправить проблему для Live дистрибутивов на USB флэшке.

На самом деле, проблема может возникнуть не только на Live системе, но и при обычной установке. Но в этом случае порядок действий другой — нужно загрузиться в систему (с помощью изменения опций загрузки, как показано ниже, либо переключиться в интерфейс командной строки), а затем обновить систему и/или установить видеодрайвер видеокарты для NVidia. Этот вариант для обычной установке Linux, не Live.

Что касается Live систем, то они не сохраняют сделанные на них изменений после перезагрузки, поэтому описанный выше метод не подходит. На самом деле, на Live системе тоже можно делать изменения, если система записана на USB диск. Для оптических дисков это невозможно в принципе.

Итак, приступим к исправлению проблемы!

Исправление ошибки A start job is running for live-config contains…

В меню загрузки нажмите е (или TAB). Откроется окно опций загрузки. Если в нём несколько строк, то передвиньте курсор на строку, которая начинается с

linux

Посмотрите, встречаются ли в этой строке «quiet» и «splash»?

  • quiet означает не показывать сообщения о процессе загрузки
  • splash означает показывать экран заставки

Я рекомендую убрать обе строки.

И, самое главное, добавьте в конец, через пробел, следующее:

nouveau.modeset=0

Для продолжения загрузки нажмите F10 (или ENTER).


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

Как изменить файлы в Live системе

Оптические диски с Live-системами привили привычку, что информацию на такой системе невозможно изменить. Дело, конечно, в ограничениях самих оптических дисков, а не режима Live.

В режиме Live на USB носителях разделы просто монтируются с параметром «только чтение». Поэтому достаточно перемонтировать раздел в режим записи и на нём будет возможно сохранить сделанные изменения.

Далее я покажу на примере Tails (кстати, рекомендую онлайн книгу «Руководство по Tails» — там очень много информации по данному дистрибутиву для анонимности). В других дистрибутивах пути могут чуть различаться. Также имена дисков могут различаться в зависимости от конкретного компьютера. Поэтому из данной статьи вы должны усвоить принцип и отредактировать последующие команды в соответствии с вашими конкретными условиями.


Если вы исправляете проблему для Tails, то не забудьте при включении установить Пароль администратора.

Теперь нам нужно узнать имя диска, для этого введите команду:

sudo fdisk -l

Важно правильно понять, какой из этих дисков является флешкой с Live системой. Можно сориентироваться по размеру диска. Про наименование дисков смотрите статью «Структура директорий Linux. Важные файлы Linux» — понимание, как дискам в Linux присваиваются имена, также может вам помочь.

На приведённом скриншоте, флэшка имеет имя /dev/sdb.

Теперь нужно определить, в какую точку файловой системы смонтированы разделы диска /dev/sdb. Все сделанные в системе монтирования выводит команда

mount

Используя её в паре с grep можно ускорить поиск нужно информации (здесь и далее вместо /dev/sdb введите имя вашего диска):

mount | grep '/dev/sdb'

Как видно на скриншоте, раздел /dev/sdb1 смонтирован в /lib/live/mount/medium. Также обращаем внимание на буквы ro, они означают «только для чтения».

Для перемонтирования раздела с разрешениями на запись, нужно выполнить команду вида:

sudo mount -o remount,rw РАЗРДЕЛ ТОЧКА_МОНТИРОВАНИЯ

Для моих данных это команда:


sudo mount -o remount,rw /dev/sdb1 /lib/live/mount/medium

Опять делаю проверку:

mount | grep '/dev/sdb'

Теперь вместо букв «ro», там «rw» — это означает, что мы можем отредактировать файлы на этом разделе.

Теперь нам нужно отредактировать конфигурационные файлы, из которых система считывает опции загрузки. Дистрибутивы Linux поддерживают загрузку в БИОС и в EFI — для каждого из этих вариантов свой конфигурационный файл. Дистрибутив может быть 32-битным или 64-битным — и вновь, для каждого из этих вариантов свой конфигурационный файл загрузки. То есть в общей сложности нам нужно будет отредактировать 4 файла.

Для Tails эти файлы расположены по следующим путям:

  • /lib/live/mount/medium/syslinux/live64.cfg
  • /lib/live/mount/medium/syslinux/live.cfg
  • /lib/live/mount/medium/EFI/BOOT/live64.cfg
  • /lib/live/mount/medium/EFI/BOOT/live.cfg

То есть искать нужно в точке монтирования (/lib/live/mount/medium/) директории syslinux и EFI/BOOT.

Открываем первые два файла:

sudo gedit /media/amnesia/Tails/syslinux/live*.cfg

Там перечислены все пункты меню, для Tails это:

  • live (обычная загрузка)
  • livefailsave (режим восстановления, «безопасный режим»)

Достаточно сделать изменения только для того пункта, которым вы пользуетесь. В случае Tails нужно изменить live.

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

nouveau.modeset=0

И опционально можно удалить (я всегда удаляю, т. к. это сильно упрощает решение возникающих проблем) строки:

quiet
splash

Когда всё готово, сохраняем и закрываем оба файла.

Открываем следующие два:


sudo gedit /media/amnesia/Tails/EFI/BOOT/live*.cfg

И повторяем сделанные изменения:

Также сохраните и закройте эти файлы.

Теперь попробуйте перезагрузиться. Больше не нужно редактировать параметры загрузки — система должна включиться нормально.


Рекомендуется Вам:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *