Постоянное исправление с использованием самого неисправного загрузочного USB-накопителя
Короткая версия
TL; DR; для тех, кто знает, что делает:
В boot:
запрос после того, как вы нажмете на приведенную выше ошибку, введите live
и нажмите Enter
, чтобы начать сеанс USB в реальном времени.
Откройте терминал (например, с помощью Ctrl+Alt+t
) и введите каждую командную строку ниже по очереди:
sudo -iapt-get updateapt-get install syslinuxmount | grep cdrom
Последняя команда выше показывает вам, к какому устройству подключен ваш загрузочный USB.
Важный! заменять /dev/sdb1
в приведенной ниже команде в терминале с устройством в выводе последней команды выше:
syslinux /dev/sdb1
Перезагрузитесь и наслаждайтесь!
Длинная версия
Эта ошибка возникает из-за того, что вы использовали дистрибутив с более ранней версией syslinux
пакет для создания загрузочного USB дистрибутива ожидаю более позднюю версию (спасибо, Амир Али Акбари для ссылки на ошибку).
Эта ошибка также бывает если вы используете, скажем, Ubuntu 14.04, чтобы создать загрузочный USB-накопитель для чего-либо, начиная с Ubuntu 15.04 и выше.
Обходной путь, упомянутый Филип Сохайек в Луций'с ответ работает, конечно, но, учитывая примечания к выпуску Utopic, на которые я ссылался выше, и упомянутый там обходной путь, позволяющий использовать ту же версию Ubuntu, что и загрузочный образ, для создания загрузочного образа, должно быть возможно навсегда устранить проблему с самого live CD:
Загружайте загрузочный USB-накопитель до тех пор, пока не появится сообщение об ошибке:
Unknown keyword in configuration file: gfxboot.c32: not a COM32R imageboot:
В boot:
приглашение, введите live
и нажмите Enter (нет необходимости нажимать TAB, так как он служит только для отображения доступных вам опций, в том числе live
).
Как только вы войдете в живой сеанс Ubuntu, настройте его так, чтобы вы могли получить доступ к Интернету (например, с помощью подключение к сети Wi-Fi).
Откройте окно терминала (например, нажмите Ctrl+Alt+T
). И введите следующую последовательность команд одну за другой (отвечая "Да" на любые запросы подтверждения).:
sudo -iapt-get updateapt-get install syslinux
Первый дает вам root-доступ, а последние два устанавливают более новые syslinux
пакет, необходимый для исправления вашего загрузочного USB-накопителя. Итак, теперь вам нужно выяснить, что именно вы исправляете, т.Е. каково имя устройства, к которому подключен ваш загрузочный USB.
В окне терминала выше введите
mount | grep cdrom
Вы должны увидеть вывод, подобный
/dev/sdb1 on /cdrom type vfat (... lots of irrelevant mount flags ...)
Самая важная часть - это первое "слово" выше. Обычно это будет /dev/sdb1
но это может быть что-то другое, если к вашей машине подключено больше дисков.
В качестве альтернативы вы можете запустить gparted
команду из пользовательского интерфейса и просмотрите диски, чтобы увидеть, к какому устройству подключено /cdrom
Теперь введите приведенную ниже команду в окне терминала, будучи очень осторожно для замены /dev/sdb1
с помощью устройства, которое вы получили из предыдущей команды:
syslinux /dev/sdb1
Последняя приведенная выше команда перезаписывает более раннюю версию syslinux
в загрузочном секторе раздела вашего загрузочного USB-устройства с правильной версией, соответствующей самому дистрибутиву.
Вот и все! Теперь перезагрузитесь, и вы сможете пройти через обычный графический интерфейс Live USB.
Конечно, если у вас есть загрузочный носитель Ubuntu, у которого нет опции оценки, например установочный носитель Ubuntu Server, вы не можете использовать его для исправления самого себя, но вы можете использовать настольную версию для исправления серверной версии с помощью приведенных выше инструкций. Просто подключите носитель серверной версии к USB после того, как настольная версия уже загружена, и используйте устройство для серверной версии вместо /dev/sdb1
выше.