Ошибка Grub при установке Ubuntu
Обновлено: 21.11.2024
Я знаю, что это очень распространенная проблема, но если я здесь, это означает, что я уже искал и пробовал много способов: безуспешно. Я пытаюсь установить Ubuntu на MacBookPro 13 дюймов 2019 года с MacOS BigSur в раздел (ни на виртуальную машину, ни на буткемп).
Как я подготовил Ubuntu live USB
На данный момент я скачал последнюю стабильную версию Ubuntu: Ubuntu 20.04.2.0 LTS.
Затем я подключил USB-накопитель емкостью 4 ГБ и отформатировал его с помощью Дисковой утилиты как MS-DOS (FAT).
Наконец-то я установил Etcher и записал ISO-образ на USB-накопитель.
Перезапустил мой Mac, удерживая клавишу выбора, и загрузился с моего USB (загрузка EFI).
Как я установил Ubuntu
- В первом меню я выбрал "Попробовать Ubuntu"
- На рабочем столе ни сенсорная панель, ни клавиатура не работали, поэтому я подключил внешнюю мышь и включил экранную клавиатуру, чтобы завершить установку.
Откройте обзор действий и начните вводить настройки.
Нажмите "Настройки".
Нажмите «Специальные возможности» на боковой панели, чтобы открыть панель.
Включите экранную клавиатуру в разделе ввода.
Я щелкнул значок установщика Ubuntu на рабочем столе
Выбрана обычная установка и установлен флажок "Установить стороннее программное обеспечение"
Когда вас спросили, на какой раздел установить Ubuntu, я выбрал другой вариант/иначе
Затем я создал 2 раздела из Free Space
- один из 512 МБ, "EFI" (из раскрывающегося меню)
- один из 30 ГБ, ext4 (из выпадающего меню), подключенный к / (из другого выпадающего меню)
Затем я убедился, что диск, на который устанавливается загрузчик, был установлен на диск, а не на конкретный раздел EFI, который я создал (т. е. /dev/nvme0n1, а не /dev/nvme0n1p3)
Нажал Установить сейчас
Установка завершается ошибкой на этапе grub2
Примечания
- Я уже пытался снять флажок "Установить стороннее программное обеспечение"
- Я уже пытался выбрать "Минимальную установку" вместо "Обычная".
- WiFi тоже не работает, поэтому позже я попробовал кабель Ethernet, и сетевое подключение теперь работает
- Я полностью стер свой диск и переустановил MacOS (конечно, у меня есть резервная копия моих файлов)
Видео процесса установки
Скриншот с последними сообщениями об ошибках
Не знаю Mac, но похоже на проблему с записью в UEFI. Есть ли на Mac безопасная загрузка UEFI? Или какой-либо параметр, запрещающий или разрешающий внесение изменений в UEFI.
Единственное, о чем я мог подумать, это SystemIntegrityProtection (SIP), но я думал, что это повлияет только на раздел MacOS: может быть, вместо этого он повлияет на весь диск?
@oldfred, это правильно, вам нужно разрешить внешнюю загрузку, однако я уже установил это, иначе я бы не смог загрузиться с этого USB-накопителя Ubuntu Flash :)
3 ответа 3
У меня была точно такая же проблема при установке Ubuntu 20.04.2.0 LTS на MacBook Pro 2020 года с четырехъядерным процессором Intel Core i5 с тактовой частотой 2 ГГц и macOS Big Sur версии 11.1. Проведя два дня, пытаясь заставить его работать, я наконец нашел решение. Имейте в виду, что это долгий процесс.
Из моего исследования я обнаружил, что проблема связана с тем, что загрузчик Mac ожидает, что раздел EFI будет отформатирован как HFS+, тогда как установщик Ubuntu форматирует его как VFAT (как заявил здесь Рохит Мадхаван).
Чтобы обойти эту проблему, я нашел три возможных решения:
- Используйте метод Рохита Мадхавана.
- Замените загрузчик с GRUB на rEFInd.
- Установите Ubuntu на внешний SSD, используя метод Флориса ван Брейгеля.
Первый вариант был опубликован семь лет назад и требовал добавления неподписанного репозитория к моей установке Ubuntu (чего я не хотел делать из соображений безопасности). Я не понимал всех последствий перехода с GRUB на rEFInd, поэтому мне было неудобно использовать второй вариант, и, наконец, я не хотел медленного доступа к памяти с помощью внешнего SSD, поэтому я не хотел использовать третий вариант. .
Мое окончательное решение состояло в том, чтобы использовать части первого и третьего вариантов, чтобы создать собственный файл конфигурации GRUB, отформатированный в HFS+, чтобы я мог загружать Ubuntu с раздела на моем внутреннем SSD.
Резервное копирование
Хотя этот процесс не должен вызвать у вас никаких проблем, в случае ошибки он может стереть ваш диск. В результате всегда безопаснее создать резервную копию всего, прежде чем продолжить.
Установка Ubuntu
- Откройте Дисковую утилиту на Mac.
- Выберите твердотельный накопитель Apple (обязательно выберите родительский диск, а не контейнер).
- Выберите "Раздел".
- Нажмите кнопку "плюс" и создайте новый раздел с именем Ubuntu Boot Loader в формате Mac OS Extended (Journaled) и размером 128 МБ. Это будет служить местом для вашего загрузчика Ubuntu позже.
- Снова нажмите кнопку "плюс" и создайте еще один новый раздел с именем Ubuntu в формате MS-DOS (FAT) и выделите для него объем памяти, который вы хотите иметь в своей установке Ubuntu (я бы рекомендовал не меньше 50 ГБ).
- Загрузите Ubuntu отсюда.
- Подключите USB-накопитель и откройте Дисковую утилиту. Отсюда найдите USB, нажмите Erase , выберите формат MS-DOS (FAT) и выберите схему GUID Partition Map, затем нажмите Erase .
- Используйте Etcher, чтобы записать этот файл ISO на USB-накопитель. Имейте в виду, что это приведет к очистке всего USB-накопителя (подробности см. здесь).
- Перезагрузите компьютер, нажав Cmd+R при перезагрузке. Это переведет вас в режим восстановления.
- Войдите в свою учетную запись, перейдите в раздел меню «Утилиты», выберите первое в раскрывающемся меню и измените настройки на «Без защиты» и «Разрешить загрузку с внешнего диска».
- Выключите компьютер.
- Подключите загрузочный USB-накопитель и включите компьютер, удерживая нажатой клавишу Option.
- Выберите загрузочный диск EFI (должен быть желтым). Это может показать вам предупреждение о том, что требуется обновление. Нажмите «Обновить». Это перезагрузит ваш компьютер. Убедитесь, что вы держите Option, когда он снова включится. Затем снова нажмите на загрузку EFI.
- Выполните шаги с первого по пятый отсюда.
- На странице "Тип установки" выберите "Другое".
- Найдите созданный вами раздел MS-DOS (FAT) и нажмите минус.
- Выберите «Свободное место» и нажмите «плюс».
- Создайте пространство памяти Linux, выбрав необходимое количество ГБ, выберите Ext4 Journaling File System , установите флажок Форматировать раздел и установите точку монтирования как / .
- Выберите «Свободное место» и нажмите «плюс».
- Создайте пространство подкачки Linux, используйте оставшуюся память и выберите формат подкачки.
- В разделе «Устройство для установки загрузчика» выберите раздел, в котором находится отформатированная память ext4.
- Нажмите "Установить сейчас".
- Продолжить процесс установки. Вы снова увидите предупреждение о сбое grub-install /dev/nvme****, но не беспокойтесь. Просто нажмите перезапустить. Вам будет предложено удалить USB-накопитель, а затем нажмите Enter .
Теперь на вашем компьютере установлена Ubuntu, но ваш загрузчик GRUB не сможет открыть ее без посторонней помощи.
Вход в Ubuntu
- Перезагрузите компьютер и нажмите клавишу Option при загрузке.
- Выберите загрузочный диск EFI (это ваша установка Ubuntu).
- Должен отображаться терминал GRUB.
- Выполните следующие шаги, описанные Рохитом Мадхаваном:
В консоли grub введите ls
Возможно, вы не получите точно такие же результаты, но у вас будут похожие варианты.
Теперь найдите раздел, содержащий домашний каталог вашего пользователя.
Продолжайте попытки, пока не найдете.
Результат последнего шага состоит из двух частей: (hdX,gptY). Вам нужно сохранить часть hdX, но просмотреть все параметры gptY в поисках каталога /boot/grub.
Теперь вы хотите сделать его корневым для дальнейших команд.
Единственным способом правильной загрузки было использование UUID диска. Чтобы получить это -
Запишите UUID. На следующем шаге вам придется ввести его вручную.
Консоль GRUB может выполнять завершение с помощью табуляции, поэтому, если вы просто наберете часть vmlinuz и нажмете на вкладку, а затем нажмите . и снова табуляция, вам не нужно будет вводить полное имя файла. убедитесь, что часть efi.signed присутствует.
Теперь установите начальный RAM-диск
Вы должны иметь возможность загружаться с помощью команды
Теперь вы окажетесь в своей установке Ubuntu, как если бы все было установлено правильно. Но каждый раз, когда вы перезагружаетесь, вы должны повторять этот процесс. Чтобы обойти это, вы можете сделать следующее.
Постоянное устранение проблемы с GRUB
Здесь вам нужно переформатировать загрузчик VFAT, который установка Ubuntu сделала по умолчанию в HFS+. Это можно сделать, создав собственную конфигурацию загрузчика с помощью GRUB. Я использовал тот же метод, что и Флорис ван Брейгель (но на моем внутреннем SSD, а не на внешнем SSD).
- Следуя инструкциям, начиная с раздела Создание загрузочной системы Ubuntu, часть 1, и заканчивая разделом Включение SIP (в целях безопасности) . Единственное изменение заключается в том, что диск, на который вы должны ссылаться, — это ваш внутренний раздел загрузчика Ubuntu (вам не нужен внешний диск с этим разделом.
- Перезагрузите компьютер, удерживая клавишу Option во время загрузки. Теперь у вас будет два загрузочных диска EFI. Заходим в крайний левый. В нем должно быть сказано, что вам нужно установить обновление, чтобы это работало. Нажмите Обновить .
- Во время перезагрузки снова удерживайте нажатой клавишу Option, а затем выберите средний загрузочный диск EFI. Это снова вернет вас на экран GRUB.Подождите минуту или две, и вы должны перейти к экрану загрузки Ubuntu.
ВСЕ СДЕЛАНО. Теперь вы сможете загрузить Ubuntu и MacOS.
Надеюсь, вам это поможет.
Похоже, ваш установочный носитель не загрузился в режиме efi, вы можете запустить эту команду, чтобы убедиться, что он загружен в режиме efi.
[ -d /sys/firmware/efi ] && echo "Режим UEFI" || echo "Устаревший режим
Если вы находитесь в устаревшем режиме, попробуйте создать USB-носитель с помощью другого инструмента, есть несколько руководств по созданию установочного носителя с поддержкой uefi, а затем перед установкой снова проверьте режим загрузки.
Вы можете использовать следующие команды, чтобы проверить, что они немного легче читаются, чем приведенная выше.
test -d /sys/firmware/efi && echo efi || повторить наследие
или длиннее, но проще для понимания
if test -d /sys/firmware/efi;then echo efi;else echo legacy;fi
Это может быть или не быть "ответом" - я оставлю это на ваше усмотрение. И вы должны знать, что я не пытался установить Ubuntu на Mac с T2, но я верю, что это можно сделать. Я не буду пытаться прорабатывать с вами все детали. Что я постараюсь сделать, так это указать вам правильное направление и попытаться прояснить любые моменты путаницы. И я попрошу взамен одну вещь: если этот «ответ» поможет вам успешно установить Ubuntu на ваш MBP 2019 года, я хочу, чтобы вы отправили запрос на перенос на мою страницу GitHub с вашей процедурой установки.
Основой для моей процедуры установки был этот ответ на Ubuntu SE. Обратите внимание, что он ссылается на сайт rEFInd SourceForge, где вы найдете загрузки, инструкции по установке и форум поддержки.
Мой Mac был другим, и процедура установки, которую я задокументировал на GitHub, отражает некоторые различия между Mac Mini 2018 года и моим MBP 2011 года. Будут и другие различия между вашим MBP 2019 года, моим MBP 2011 года и Mac Mini 2018 года. Надеюсь, вы найдете достаточно общего между всеми этими источниками для достижения своей цели.
Микросхему T2 в последних моделях компьютеров Mac можно заставить поддерживать установку Linux на последних моделях компьютеров Mac с процессором Intel 1, 2 . Единственная известная мне ложка дегтя для последних моделей компьютеров Mac заключается в том, что в настоящее время не существует драйвера Linux для проприетарных микросхем PCIe SSD, которые использует Apple. Подробности здесь.
Что это значит? Это означает, что Linux должен быть установлен на внешнем диске. Это можно сделать с помощью адаптера USBC-to-SATA. Этот адаптер рекламируется как 10 Гбит/с; Я обнаружил, что он медленнее, чем твердотельный накопитель PCIe, но не вызывает возражений.
Для меня процедура установки была сложной. Документация Apple постоянно устаревает из-за ежегодных обновлений ОС, документы Ubuntu вводят в заблуждение, и я не хотел забивать свой MBP. В качестве «страховки» я купил новый SSD для установки на случай, если что-то пойдет не так. Я считаю, что есть процедуры восстановления, если вы решите отказаться от этого квеста, но вам нужно будет найти это руководство где-то еще. Вы обязательно должны сделать хорошую и полную резервную копию — и знать, как сделать восстановление — прежде чем начать.
Если все это звучит обескураживающе, возможно, вам стоит передумать. В моем случае я чувствовал, что риск оправдан. Моя оценка, основанная на недавней истории Apple и текущих тенденциях в отношении Mac, заключается в том, что Apple сделает мое оборудование непригодным для использования в недалеком будущем, так что терять особо нечего. Похоже, они намерены радикально изменить систему, но мы понятия не имеем, что это оставит нас как пользователей.
На этой странице подробно описаны процедуры установки и переустановки GRUB 2. Эта информация относится к большинству версий GRUB 2, но написана специально для версии 1.99. GRUB 1.99 включен в версии Ubuntu 11.04 (Natty Narwhal) и более поздние версии. Для получения дополнительной информации по различным темам GRUB 2 посетите главную страницу GRUB2. Для получения информации о преобразовании в GRUB Legacy или из него см. документ сообщества Grub2/Upgrading.
Загрузчик GRUB 2 включен во все поддерживаемые в настоящее время версии семейства Ubuntu. GRUB 2 может работать как с традиционными компьютерными прошивками, такими как BIOS, так и с более новыми стандартами EFI/UEFI. Он совместим с MBR, GPT и другими таблицами разделов.
Все ссылки на GRUB относятся к GRUB 2. Там, где обсуждается GRUB 0.97, он будет упоминаться по номеру версии или как GRUB Legacy.
Установка GRUB 2 автоматически включается в обычную установку Ubuntu. Ввод, требуемый пользователем для первоначальной настройки, очень прост. Если установка будет использовать весь диск, никаких специальных настроек GRUB не требуется. Если пользователь хочет использовать определенный раздел для Ubuntu, он должен выбрать раздел Ubuntu и диск, на который следует встроить информацию о загрузчике.
Главные папки GRUB 2 – это /boot/grub/ и /etc/grub.d/. Пользовательские настройки хранятся в файле /etc/default/grub. Меню GRUB 2 построено на основе информации, содержащейся в /boot/grub/grub.cfg.
Параметры установки (LiveCD)
Использование всего диска («Стереть диск и установить Ubuntu»):
Установить на весь диск: пользователь должен выбрать диск, на который будут установлены Ubuntu и GRUB 2. GRUB 2 перезапишет загрузочную информацию диска и поместит файлы GRUB 2 в соответствующие места.
Установка Ubuntu в определенный раздел («Что-то еще»):
При использовании опции «Что-то еще» вам будет предложено выбрать «Устройство для установки загрузчика». Выберите: * либо диск (например, /dev/sdX, а не /dev/sdXY), на котором BIOS настроен для загрузки (рекомендуется для обычного использования) * ИЛИ раздел (например, /dev/sdXY, а не /dev/sdX) ), на котором будет установлен Ubuntu (/boot, else /) (только если вы хотите загрузить его из другого загрузчика; если есть сомнения, НЕ выбирайте этот вариант)
- укажите диск (например, /dev/sdX, а не /dev/sdaXY), который в данный момент не используется для загрузки системы, в качестве местоположения загрузчика.
- После завершения установки измените порядок загрузки (через настройку BIOS), чтобы диск, на который была записана информация GRUB, загружался первым.
- Если пользователь хочет восстановить загрузку с исходным загрузчиком, измените порядок загрузки обратно на исходный диск.
Примечания по BIOS/MBR
GRUB 2 обычно записывает информацию о загрузчике в область сразу за основной загрузочной записью и перед первым разделом. Некоторое программное обеспечение в операционных системах, отличных от Linux, также использовало эту встроенную область и сломало систему, перезаписав информацию GRUB 2 в системах с двойной загрузкой. GRUB 2 теперь может распознавать эту потенциальную проблему и избегать ее.
Информацию о загрузчике не обязательно устанавливать во встроенную область MBR. Он также может полностью обойти MBR и быть установленным в определенный раздел. При этом расположение файлов GRUB 2 указывается с помощью черных списков. Эта опция недоступна при установке Ubuntu с графическим интерфейсом, но ее можно сделать через терминал после установки. Даже в этом случае этот метод не так надежен, как запись в MBR, и не рекомендуется разработчиками GRUB.
Примечания по BIOS/GPT
Если BIOS настроен на загрузку диска в режиме Legacy/mbr, для установки GRUB2 на диск GPT (таблица разделов GUID) требуется выделенный загрузочный раздел BIOS с рекомендуемым размером не менее 1 МБ. Этот раздел можно создать с помощью GParted или других инструментов для создания разделов или с помощью командной строки. Он должен быть отмечен флагом bios_grub. Необходимые модули GPT автоматически включаются во время установки, когда GRUB 2 обнаруживает схему GPT.
GRUB 2 совместим с EFI/UEFI и загружает необходимые модули во время установки. Дополнительную информацию по этой теме см. в документации сообщества UEFI.
После установки
-
GRUB 2 будет загрузчиком по умолчанию для компьютера.
- Загрузочные файлы Windows в разделе Windows не затрагиваются установкой GRUB 2. Изменяются только данные MBR. Управление процессом загрузки Windows можно получить, выбрав запись Windows в меню GRUB 2 во время загрузки.
- После установки другой операционной системы, в которой был установлен собственный загрузчик, переустановите GRUB2, чтобы вернуть управление нужной ОС. Когда операционная система добавляется на мультизагрузочный компьютер, она обычно берет на себя управление процессом загрузки. Переустановка GRUB 2 из нужной ОС вернет управление процессом загрузки этой ОС.
- Добавьте загрузочную информацию на дополнительный диск. GRUB 2 можно установить на несколько дисков — все они указывают на одну и ту же операционную систему. Это обеспечивает резервную копию на случай повреждения MBR или данных загрузочной записи на определенном диске.
- Заменить отсутствующие файлы
- Исправить неисправную систему, например, когда пользователь видит только «GRUB» на черном экране без запроса или когда пользователь не может загрузиться с помощью параметров режима восстановления GRUB 2.
- Обновление Grub Legacy
- Загрузитесь с рабочего стола LiveCD.
- Смонтируйте раздел с вашей установкой Ubuntu.
Устройство/диск обозначается sdX, где X — обозначение устройства. sda — это первое устройство, sdb — второе и т. д. Для большинства пользователей MBR следует установить на sda, первый диск в их система. Пример:
Если пользователь получает сообщение "ошибка: невозможно открыть /boot/grub/device.map", добавьте переключатель -m и путь к файлу device.map. к команде следующим образом: Пример:
Если пользователь хочет узнать, почему произошел сбой системы, обратитесь к разделу Команды после восстановления ниже.
через ChRoot
- Загрузитесь с рабочего стола LiveCD. Компакт-диск должен быть 64-разрядным (не 32-разрядным), если исправляемая система является 64-разрядной.
- Откройте терминал. Способ зависит от версии.
- Замените правильный раздел: sda1, sdb5 и т. д.
Переустановите GRUB 2 (замените правильное устройство на sda, sdb и т. д.не указывать номер раздела):
Восстановление загрузки после обновления Windows в Ubuntu 14.04 (без RAID)
- Вставьте установочный носитель Ubuntu (например, 64-разрядный DVD-диск Ubuntu 14.04 LTS)
- Убедитесь, что порядок загрузки BIOS настроен на чтение с носителя в первую очередь (проконсультируйтесь с руководством по материнской плате/компьютеру) и перезагрузите компьютер.
- Выберите режим Ubuntu Live/Try (не устанавливать)
- Нажмите фиолетовую кнопку поиска Ubuntu — введите «gparted» и нажмите на его значок.
- Определите имя вашего раздела Linux (/dev/sdXY) — вы сможете идентифицировать его, распознав его формат (скорее всего, ext4) и размер (количество ГБ)
- Нажмите фиолетовую кнопку поиска Ubuntu — введите «gnome-terminal» и нажмите на его значок
Очистка и переустановка GRUB 2
Разница между использованием команды grub-install и очисткой и переустановкой GRUB 2 заключается в том, что последняя полностью удаляет все файлы GRUB 2 и системные настройки. Очистка GRUB 2 также является методом сброса всех параметров конфигурации до значений по умолчанию в рабочей системе. Это может исправить сбои GRUB 2 из-за поврежденных файлов и неправильных конфигураций, а также из-за отсутствующих папок/файлов, удаленных пользователем. Пакеты GRUB 2, удаленные и переустановленные с помощью этой процедуры, включают grub-pc, grub-common и, в Grub 1.99 и более поздних версиях, grub-gfxpayload-lists эм>.
Во время этой операции пользователь временно останется без загрузчика. Перед очисткой пакетов GRUB 2 убедитесь, что у вас есть работающее подключение к Интернету и доступ к репозиториям.
Эту процедуру можно очень просто выполнить с помощью Boot-Repair или описанной ниже терминальной процедуры.
Примечание: процедура Boot-Repair также удалит пользовательские файлы, которые могут блокировать загрузку. Он также может очищать и переустанавливать GRUB2 для систем UEFI/LVM/RAID.
с помощью графического инструмента восстановления загрузки
* Запустите Boot-Repair либо с liveCD, либо из установленного сеанса * Нажмите «Дополнительные параметры» --> вкладка «Параметры GRUB» * Установите флажок «Очистить GRUB и переустановить его» --> Применить
На днях я пытался расширить свой корневой раздел Ubuntu, с которого у меня двойная загрузка Windows 8. Расширение раздела прошло успешно, за исключением того, что я испортил конфигурацию Grub. Когда я загрузился на своем ноутбуке после изменения раздела, меня приветствовал экран смерти Linux со словами:
ошибка: нет такого раздела
спасение grubПогуглив немного, я нашел эту мега-ветку на форуме Ubuntu, которая мне помогла. Но поскольку это очень сложная тема, я переписал учебник, чтобы можно было легко следовать ему. Таким образом, есть некоторые предположения и некоторые требования для исправления ошибки: нет такой проблемы со спасением разделов.
Вы можете прочитать это руководство, чтобы исправить аналогичную ошибку Grub, минимальную поддержку BASH, например редактирование строк. Для первого слова TAB перечисляет возможные варианты завершения команды. в любом другом месте TAB перечисляет возможные варианты устройств или файлов.
Требования и предположения:
- У вас должен быть живой CD/DVD/USB с той же версией ОС.
- У вас должно быть подключение к Интернету.
- У вас двойная загрузка Windows с Ubuntu (без установки Wubi)
- У вас нет отдельного раздела /boot
Теперь давайте посмотрим, как мы можем спасти личинку здесь.
Как исправить: ошибка: нет такого раздела, спасающего личинку
Мы будем использовать chroot для спасения grub. Вся концепция заключается в том, что, поскольку файлы конфигурации grub были удалены или повреждены, их необходимо переустановить. И используя live CD с точной версией ОС, мы можем снова установить конфигурацию grub. Он удалит все изменения (если они есть), которые вы внесли в grub.
Выполните следующие действия, чтобы легко решить проблему восстановления grub в Ubuntu (или других дистрибутивах Linux):
Шаг 1. Определите свой корневой раздел
Загружайтесь с live CD, DVD или USB-накопителя. Попробуйте Ubuntu с живого диска. Откройте терминал (Ctrl+Alt+T) и используйте следующую команду:
Здесь вы увидите имя диска и номер раздела. Он должен выглядеть как sdXY. Где X — буква диска, а Y — номер раздела. Обычно это должно быть похоже на sdaY. Вы должны распознать раздел, в котором установлен root.
Шаг 2. Смонтируйте корневой раздел
После того, как мы получим раздел, на котором установлен root, мы смонтируем корневой раздел, на котором установлена Ubuntu. Используйте следующие команды для его монтирования:
Замените XY соответствующими значениями.
Шаг 3. Станьте главой
После того, как мы смонтировали раздел, следующим шагом будет монтирование определенных элементов для подготовки chroot. Выполните следующие команды одну за другой:
Шаг 4. Очистите пакеты Grub 2
Теперь, когда мы находимся в среде chroot (вы можете думать об этом так, как если бы мы вели себя как root для смонтированного раздела), пришло время избавиться от пакетов Grub 2, но перед этим давайте обновим репозиторий.
При удалении grub вы увидите странный экран с вопросом, хотите ли вы удалить пакеты Grub 2. Нажмите TAB, чтобы выбрать Да. Он будет выделен после выбора. Нажмите Enter, чтобы продолжить.
Шаг 5. Переустановите пакеты Grub
Поскольку мы удалили предыдущий Grub, мы удалили испорченные настройки, а также любые сохраненные в нем избранные настройки. Теперь мы установим новый и свежий Grub. Несколько вещей, о которых следует помнить, прежде чем продолжить установку Grub.
- При установке нового Grub вам будет предложено добавить дополнительные параметры ядра. Просто нажмите TAB, чтобы перейти к OK, и нажмите Enter, чтобы продолжить.
- Это принесет вам примечания по установке. Нажмите Tab, чтобы ОК, а затем Enter и продолжить.
- Когда он представит вам вариант устройства (чтобы спросить, на какой раздел следует установить Grub), выберите вариант в формате sdX. НЕ выбирайте раздел диска в 4-буквенном формате, т.е. sda4 и т. д. Когда вы выбираете раздел, перед ним должна быть звездочка (*), например [*] sdX. Если это не так, выделите (с вкладкой) и нажмите ПРОБЕЛ, чтобы выбрать его. Вкладка "ОК" и нажмите клавишу ввода.
Это должно выглядеть так:
Теперь, когда вы все это учли, используйте приведенную ниже команду для установки Grub.
Обновите grub и выйдите из chroot:
Шаг 6. Размонтируйте раздел:
Мы что-то смонтировали в начале, не так ли? Что ж, давайте просто размонтируем их.
Вот и все. Перезагрузите систему, и вы должны увидеть старый добрый загрузочный экран Grub, как и раньше. Я надеюсь, что это руководство помогло вам избавиться от ошибки: нет такой проблемы с восстановлением разделов, и руководство было простым для понимания. Всегда приветствуются любые вопросы, предложения или слова благодарности. Следите за новыми руководствами по Linux.
GRUB – это загрузчик. Он широко используется в качестве загрузчика по умолчанию для Linux. Хотя GRUB широко используется в Linux, GRUB также может загружать операционные системы Windows. Он очень мощный и расширяемый.
Загрузчик GRUB имеет мощный интерфейс командной строки, который можно использовать для решения проблем с загрузкой. Это называется GRUB Rescue.
В этой статье я покажу вам, как использовать интерфейс командной строки GRUB Rescue для GRUB. Я использую Ubuntu 18.04 LTS для демонстрации. Приступим.
По умолчанию, если все в порядке, при запуске компьютера вы должны загрузиться прямо в установленную вами операционную систему. В моем случае это операционная система Ubuntu 18.04 LTS.
Если что-то пойдет не так и вызовет проблемы с загрузкой, вы, скорее всего, увидите интерфейс командной строки GRUB Rescue. Это выглядит примерно так, как показано на скриншоте ниже.
Иногда вы сможете увидеть меню GRUB, как показано на снимке экрана ниже. Чтобы перейти отсюда к GRUB Rescue, нажмите c.
Вы должны иметь возможность перейти в режим командной строки GRUB Rescue, как показано на снимке экрана ниже.
В следующем разделе я покажу вам, как использовать GRUB Rescue. Сначала я покажу вам, как загрузиться в установленную мной операционную систему Ubuntu 18.04 LTS. Затем я расскажу о некоторых распространенных командах GRUB Rescue.
Использование GRUB Rescue для загрузки в Ubuntu 18.04 LTS:
В интерфейсе командной строки GRUB Rescue вы можете просмотреть список установленных жестких дисков и разделов с помощью следующей команды:
Как видите, у меня есть (hd0), (hd0, gpt1) и (hd0,gpt2). (hd0) представляет необработанный жесткий диск. (hd0,gpt1) и (hd0,gpt2) — первый и второй разделы GPT (hd0) соответственно.
У меня установлена Ubuntu 18.04 LTS на оборудовании UEFI. Таким образом, первый раздел (hd0, gpt1) — это раздел EFI, а второй раздел (hd0, gpt2) — корневой раздел. Файлы, необходимые для загрузки операционной системы, в моем случае находятся в каталоге /boot раздела (hd0,gpt2). У вас может быть каталог /boot в отдельном разделе, в этом случае внесите изменения в команды по своему усмотрению.
Вы можете перечислить, какие файлы у вас есть в определенном разделе, с помощью команды ls из интерфейса командной строки GRUB Rescue.
Выведите список файлов и каталогов корневого раздела (hd0,gpt2) с помощью следующей команды:
Как видите, файлы и каталоги перечислены.
Нас интересуют файлы, находящиеся в каталогах /boot.
Вы должны найти два файла в каталоге /boot, vmlinuz и initrd, как показано на снимке экрана ниже. Эти файлы необходимы для правильной загрузки.
Теперь установите корневую переменную так, чтобы она указывала на корневой раздел (hd0,gpt2), с помощью следующей команды:
Теперь вам нужно использовать команду linux, чтобы сделать относительный путь к файлу vmlinuz известным загрузчику GRUB.
Вы можете сделать это с помощью следующей команды:
ПРИМЕЧАНИЕ. Здесь требуется root=/dev/sda2. В противном случае вы не сможете загрузиться. /dev/sda2 означает, что это второй раздел первого жесткого диска. Я добавил таблицу, чтобы помочь вам понять, как это работает.
Идентификатор GRUB Жесткий диск Раздел Идентификатор Linux (hd0) Первый /dev/sda (hd0,gpt1) Первый Первый /dev/sda1 (hd0,gpt2) Первый Второй /dev/sda2 < td style="width: 193px">(hd1) Второй /dev/sdb < /tr>(hd1,gpt2) Второй Второй /dev/sdb2 (hd1,gpt5) Второй Пятый /dev/sdb5 Также помните, что автодополнение файлов и каталогов с помощью ключа работает и в интерфейсе командной строки GRUB, как и в терминале Linux. Так что вам не составит труда ориентироваться в интерфейсе командной строки GRUB.
Теперь вам нужно запустить команду initrd, чтобы образ initrd был известен загрузчику GRUB.
Вы можете сделать это с помощью следующей команды:
Теперь, когда все настроено, вы можете запустить следующую команду GRUB для загрузки операционной системы Ubuntu 18.04 LTS.
Должен начаться процесс загрузки, как показано на снимке экрана ниже.
После этого вы должны увидеть экран входа в систему. Войдите в свою систему Ubuntu 18.04 LTS.
Теперь, когда вы вошли в систему, выполните следующую команду, чтобы обновить файл конфигурации GRUB 2:
Конфигурация GRUB 2 должна быть обновлена.
Возможно, вам также потребуется переустановить загрузчик GRUB с помощью следующей команды:
ПРИМЕЧАНИЕ. Здесь /dev/sda — это жесткий диск, на который вы хотите установить загрузчик GRUB. Обычно это жесткий диск, на котором находится корневой раздел.
Теперь, когда все работает, вы сможете загрузиться в обычном режиме. Если вам все еще нужно что-то исправить, вы можете сделать это прямо сейчас.
Загрузка дополнительных модулей:
Иногда в интерфейсе командной строки GRUB должно быть указано grub Rescue> вместо
В этом случае вам нужно запустить 2 дополнительные команды. Они используются для загрузки модулей GRUB, которые не загружаются по умолчанию. Но очень важны для загрузки системы.
Полезные команды спасения GRUB:
В этом разделе я собираюсь перечислить некоторые из распространенных команд восстановления GRUB, которые могут вам понадобиться для устранения проблем с загрузкой.
set pager=1 — если вывод какой-либо команды достаточно длинный и не помещается на экране, то эта команда отображает вывод в пейджере, как less в терминале Linux.
lsmod — список всех загруженных модулей GRUB.
cat — используется для чтения файлов.
usb — список всех USB-устройств, подключенных к вашей системе.
clear — очищает весь текст из окна командной строки GRUB.
configfile grub.cfg_filePath — с помощью этой команды можно добавить файл grub.cfg.
insmod — загрузить модуль GRUB.
lspci — список всех подключенных устройств PCI.
ls — список файлов, каталогов и заблокированных устройств вашего компьютера.
Хотя эта статья предназначена для Ubuntu 18.04 LTS, она должна работать и с любым другим современным дистрибутивом Linux, использующим загрузчик GRUB. Спасибо, что прочитали эту статью.
Читайте также:
-
GRUB 2 запишет информацию в загрузочную область указанного диска, указывающую на файлы GRUB 2 установки Ubuntu. В более ранних версиях GRUB 2 в системах BIOS любая информация, ранее содержащаяся в области сразу за MBR, будет перезаписана. Усовершенствование GRUB 2 позволяет записывать загрузочную информацию в другую область, если приложение, отличное от Linux, уже использовало эту область.
Чтобы просмотреть файловую систему GRUB 2 и параметры конфигурации, перейдите на страницу документации сообщества Grub 2.
При использовании команды grub-install загрузочная информация обновляется и записывается на указанный диск, отсутствующие, но не поврежденные или намеренно удаленные файлы восстанавливаются.В частности, обновлены core.img, grubenv и device.map, а отсутствующие модули восстановлены. Если она отсутствует, папка grub будет создана заново. Команда grub-install не создает новое меню GRUB 2 (grub.cfg).
Переустановка GRUB 2 из работающей системы
Это перезапишет информацию MBR, чтобы она указывала на текущую установку, и перезапишет некоторые файлы GRUB 2 (которые уже работают). Поскольку это не делается во время выполнения предыдущей команды, запуск sudo update-grub после установки обеспечит актуальность меню GRUB 2.
Исправление сломанной системы
Если система перестала загружаться из-за сбоя GRUB 2 или повреждения MBR/загрузочного сектора, существуют различные способы переустановки GRUB 2. Сначала перечислены самые простые, за ними следуют более сложные.
с помощью графического инструмента восстановления загрузки
Boot-Repair — это приложение с графическим интерфейсом, которое может исправить различные проблемы GRUB 2. Его можно использовать либо с LiveCD, с собственного компакт-диска, либо во время обычного сеанса Ubuntu. В дополнение к простому пользовательскому интерфейсу, Boot-Repair также включает возможность запуска сценария для сбора сведений о системе, которые можно использовать для устранения неполадок на различных форумах и каналах IRC.
Пожалуйста, обратитесь к документации сообщества Boot-Repair за инструкциями по установке и запуску этого приложения.
в режиме спасения GRUB2
GRUB 2 предоставляет режим rescue, который позволяет пользователю попытаться восстановить GRUB 2 со специального терминала GRUB во время загрузки. Обратитесь к разделу Grub2 Command_Line_and_Rescue_Mode для получения информации об операциях терминала GRUB.
через терминал LiveCD
В этом методе используется терминал с LiveCD. Пользователь должен знать имя устройства/раздела установленной системы (sda1, sdb5 и т. д.), которая затем монтируется с LiveCD. Файлы GRUB 2 копируются из библиотек LiveCD в нужные места и MBR.
Эта операция запишет в MBR и восстановит модули и core.img в /boot/grub. Он не заменит и не восстановит grub.cfg или не исправит поврежденные файлы. Загрузите LiveCD, выберите "Попробовать" и откройте терминал.
При использовании LiveCD из-за изменений GRUB 2 между выпусками Ubuntu пользователю рекомендуется загружать LiveCD того же выпуска (11.10, 12.04 и т. д.), что и выпуск, который нужно восстановить. Если пользователь установил другую версию GRUB 2, используйте LiveCD с той же версией GRUB 2.
При необходимости используйте команду fdisk, чтобы определить раздел, на котором установлена Ubuntu. Опция fdisk "-l" представляет собой строчную букву "L". Ищите один из подходящего размера или форматирования. Запуск sudo blkid может предоставить дополнительную информацию, которая поможет найти нужный раздел, особенно если разделы помечены. '
grub-install восстановит отсутствующие файлы в папке grub, но не восстановит намеренно удаленные или поврежденные файлы. Для выполнения этих задач необходимо полностью удалить и переустановить GRUB 2.
Если Ubuntu установлена в файловой системе B-tree, например, btrfs, тогда /boot меняется на /@/boot в приведенных выше командах, так что:
Если пользователь хочет узнать, почему произошел сбой системы, обратитесь к разделу Команды после восстановления ниже.
с помощью копирования файлов разделов
Этот метод не работает, если GRUB еще не установлен или если файлы GRUB были удалены.
Этот метод говорит о 9.10, поэтому он может быть устаревшим.