Восстановление загрузчика grub ubuntu
Администраторы и пользователи Linux Ubuntu иногда сталкиваются с проблемой восстановления/переустановки загрузчика Grub 2. Типичные ситуации, которые приводят к необходимости восстановления загрузчика — это инсталляция второй операционной системы, случайное повреждение вследствие неосторожности и т.п.
Если система вдруг перестала загружаться, не стоит отчаиваться. Восстановить загрузчик Grub 2 можно с помощью Live CD или Live USB с операционной системой Linux Ubuntu.
ПОДГОТОВКА
Загрузитесь с Live CD или USB. Определите, если не знаете или не уверены, номер раздела жёсткого диска, используемого в качестве корневого. Сделать этом можно с помощью утилиты Disks, входящей в поставку Linux Ubuntu, или любым другим удобным способом. Например, /dev/sda2, /dev/sdb1. Обозначим раздел диска, используемый в качестве корневого восстанавливаемой системы, как /dev/sdXY, где X — это буква, обозначающая жёсткий диск, например, a, b, c и т.д., а Y — это номер корневого раздела.
ВОССТАНОВЛЕНИЕ
Смонтируйте корневой раздел /dev/sdXY восстанавливаемой системы в директорию /mnt Ubuntu Live, выполнив в терминале команду:
Далее нам потребуется создать синонимы в дереве файловой системы для некоторых директорий из Live Ubuntu. Для этого необходимо выполнить в терминале последовательно следующие команды:
Последнее действие позволит нам обращаться к директории /dev через путь /mnt/dev, к директории /dev/pts через путь /mnt/dev/pts и т.д.
На следующем шаге следует с помощью системного вызова chroot произвести операцию изменения корневого каталога на /mnt следующим образом:
Теперь всё готово для восстановления загрузчика Grub 2. Выполним восстановление, заменив в командах ниже имя диска sdX на своё, например, sda, sdb и т.д. Выполните последовательно следующие команды:
Если в процессе выполнения последних трёх команд отсутствовали сообщения об ошибках, то можно констатировать, что загрузчик Grub 2 восстановлен. Нам остаётся лишь в обратном порядке вернуться к системному корневому каталогу «живой» системы, размонтировать все синонимы каталогов, а также размонтировать корневой раздел восстановленной системы, выполнив последовательно команды:
Перезагрузите систему и убедитесь, что загрузчик Grub 2 восстановлен.
ВОЗМОЖНЫЕ ПРОБЛЕМЫ И ИХ РЕШЕНИЕ
Одной из наиболее распространённых проблем, с которой сталкиваются при восстановлении загрузчика Grub 2 описанным выше способом, является ошибка, вызванная отсутствием раздела c флагом bios_grub на жёстком диске с таблицей разделов GUID (GPT). Проблема проявляется во время выполнения команды:
Причиной такой ошибки является либо отсутствие флага bios_grub на специальном разделе диска, либо полное отсутствие такого раздела на жёстком диске, который требуется для нормальной работы жёстких дисков с таблицей разделов GPT. В соответствии с технологией GPT на жёстком диске для осуществления загрузки операционных систем обязательно должен присутствовать служебный раздел «BIOS boot partition» с минимальным размером 1-2 Мб и флагом bios_grub.
Если вы столкнулись с ситуацией отсутствия раздела — создайте его, используя утилиту Disks из Ubuntu Live или любым другим удобным способом. Я рекомендую «отрезать» раздел размером 2 Мб от раздела подкачки, который, как правило, присутствует на жёстких дисках с Linux Ubuntu. Можно сначала удалить раздел подкачки, затем создать требуемый служебный раздел с файловой системой EXT4 размером 2 Мб и после из оставшегося свободного неразделённого пространства жёсткого диска вновь создать раздел покачки swap.
Кроме того, возможно потребуется отсортировать с помощью утилиты gdisk разделы на диске, чтобы порядок их нумерации соответствовал физическому размещению по отношению к началу дискового пространства (для тех, кто любит порядок). Сделать это можно командой «s» в интерфейсе утилиты gdisk, доступ к которому для диска /dev/sdX осуществляется следующим образом:
где sdX следует заменить на ваш диск (не забудьте перед выходом из утилиты записать все изменения на диск командой «w»). При этом придётся отредактировать файл /etc/fstab на восстанавливаемой системе, заменив либо прямые указатели разделов диска вида /dev/sdXY на новые, которые образовались после сортировки, либо на UUID разделов диска, которые можно узнать, используя команду:
Когда служебный раздел диска размером 2 Мб (вообще говоря максимальный размер служебного раздела не ограничен, но в нашем случае 2 Мб будет достаточно) создан либо если такой раздел существовал, но на нём отсутствовал флаг bios_grub, необходимо окончательно устранить проблему, которая не позволяет восстановить загрузчик, как описано выше. Для этого установим флаг bios_grub на созданный (или проблемный) служебный раздел GPT:
где sdX следует заменить на идентификатор вашего диска, на котором расположен служебный раздел, например: sda, sdc и т.п., а «Y» соответствует номеру служебного раздела. Например, если служебный раздел размером 2 Мб для GPT — это sdb3, то в таком случае sdX следует заменить на sdb, а «Y» — на 3.
После проведённых манипуляций с дисками следует повторить процедуру восстановления Grub 2 заново так, как это указано выше.
Обратите внимание, что GPT GUID-идентификатор служебного раздела GPT после всех операций изменится на EF02, который соответствует «BIOS boot partition». Указанное произойдёт даже если в процессе создания/форматирования раздела была использована файловая система Ext4 или любая другая.
В завершение замечу, что проверить таблицу разделов диска, в том числе GPT GUID разделов и т.п., можно с помощью утилиты gdisk:
с использованием команды «p» после входа в интерфейс утилиты, пример:
Просматривать же флаги, установленные на разделах дисков, очень удобно с помощью другой утилиты parted:
Графический метод: восстановление загрузки
Boot Repair — это графический инструмент, который может восстановить GRUB2 одним щелчком мыши. Это идеальное решение проблем с загрузкой для большинства пользователей.
Если у вас есть носитель, с которого вы установили Ubuntu, вставьте его в компьютер, перезагрузите и загрузка со съемного диска . Если нет, скачать Live CD Ubuntu и записать на диск или создать загрузочную флешку .
Когда Ubuntu загрузится, нажмите «Попробовать Ubuntu», чтобы получить удобную среду рабочего стола.
Прежде чем продолжить, убедитесь, что у вас есть подключение к Интернету. Возможно, вам потребуется выбрать сеть Wi-Fi и ввести ее парольную фразу.
Откройте окно терминала из Dash и выполните следующие команды для установки и запуска восстановления загрузки:
Окно восстановления загрузки автоматически просканирует вашу систему после запуска ремонт обуви команда. После сканирования вашей системы нажмите кнопку «Рекомендуемый ремонт», чтобы восстановить GRUB2 одним щелчком мыши.
Здесь вы можете выбрать использование расширенных параметров, но вики Ubuntu рекомендует не использовать расширенные параметры, если вы не знаете, что делаете. Рекомендуемый вариант восстановления может решить большинство проблем автоматически, и вы можете еще больше испортить свою систему, выбрав неправильные дополнительные параметры.
Восстановление загрузки начнет работать. Он может попросить вас открыть терминал и скопировать / вставить в него несколько команд.
Просто следуйте инструкциям на экране. Выполните инструкции Boot Repair и нажмите «Вперед», чтобы продолжить работу мастера. Инструмент проведет вас через все, что вам нужно сделать.
Перезагрузите компьютер после того, как средство восстановления загрузки завершит применение своих изменений. Ubuntu должен загрузиться нормально.
Использование Boot Repair для исправления ошибок Grub
После запуска Boot Repair вы увидите стартовое окно программы:
Самая первая опция (Recommended repair) может исправить ошибки Grub, кликните ее, и она запустит процесс восстановления/переустановки, показанный на скриншоте ниже.
Согласно инструкциям, приведенным на скриншоте, откройте терминал и выполните следующие три команды:
После завершения выполнения данных команд кликните “Forward”, чтобы перейти к следующему этапу процесса восстановления. Вот что вы увидите на следующем этапе:
Согласно инструкциям выполните приведенные ниже три команды в правильном порядке. Во время этого этапа появится окно с запросом подтверждения удаления Grub 2, выберите «Yes».
Кликните “Forward” после завершения процесса, ниже скриншот следующего этапа.
В соответствии с инструкциями выполните в терминале приведенную ниже команду и по запросу укажите жесткий диск, на который будет установлен grub.
Теперь необходимо подождать пару минут для выполнения необходимых операций, и вы должны увидеть приведенное ниже сообщение:
Перезагрузите свою систему и вы должны увидеть меню рабочего загрузчика.
Восстановите загрузчик GRUB
Файлы загрузчика GRUB хранятся в файловой системе EFI в системе Linux. Вы можете повредить свои файлы GRUB разными способами. Одна из основных причин повреждения файлов GRUB — наличие нескольких каталогов загрузчика для разных дистрибутивов и операционных систем.
Совместное использование Ubuntu и Windows в системе с двойной загрузкой обычно используется очень часто. Если вы не задумываетесь о разделении файлов загрузчика для Windows и Ubuntu, вы, вероятно, в конечном итоге не соответствуете загрузчику GRUB. В этом посте будут рассмотрены три различных метода восстановления загрузчика GRUB с помощью USB-накопителя Ubuntu Live.
Метод 1: восстановление загрузчика GRUB с помощью Live Disk Ubuntu Server
Использование файла ISO сервера Ubuntu для восстановления рабочего стола или сервера Ubuntu является разумным решением, поскольку размер файла сервера ISO меньше, чем размер файла LTS рабочего стола. Создание загрузочного файла и быстрая загрузка занимает короткое время. Здесь мы увидим, как использовать ISO-файл сервера Ubuntu для восстановления и исправления файла загрузчика GRUB в Ubuntu.
Шаг 1. Загрузите сервер Ubuntu и создайте загрузочный диск.
На самом первом этапе вам может потребоваться загрузить файл ISO сервера Ubuntu, если у вас нет live CD или запасного USB-накопителя. Вы можете щелкнуть по этой ссылке, чтобы перейти к ISO-файлу сервера для загрузки. Когда загрузка завершится, вы используете приложение для создания загрузочного диска Ubuntu по умолчанию, чтобы создать загрузочный USB-диск.
Если вы используете компьютер с Windows, вы можете использовать инструмент UUI для создания загрузочного файла Linux, это просто, и шаги не требуют пояснений.
Шаг 2: войдите в режим спасения
После создания загрузочного диска вставьте его в свой компьютер и включите систему. Затем вам нужно нажать функциональную клавишу на клавиатуре, чтобы выбрать меню загрузчика. На большинстве ноутбуков и компьютеров функция меню загрузки отображается при нажатии клавиши ESC или F9. Вы можете найти клавишу меню загрузки для своей машины, погуглив.
Когда появится первый экран загрузки, нажмите кнопку F6, чтобы войти в экспертный режим. В экспертном режиме вы можете редактировать параметры загрузки. Чтобы войти в режим восстановления поврежденного образа, вам необходимо ввести следующее значение восстановления, указанное ниже.
Когда он успешно запустится, вам нужно выбрать язык, формат клавиатуры и другие конфигурации, чтобы начать с живого USB-накопителя.
Шаг 3: смонтируйте раздел диска
На этом этапе вам нужно будет установить загрузочный раздел, смонтировать живой диск и спасти загрузчик GRUB. Вы можете выбрать, нужно ли вам переустановить загрузчик GRUB или вам просто нужно отремонтировать его, приложив простые усилия.
Шаг 4. Восстановите загрузчик GRUB и перезагрузите компьютер.
На этом этапе появятся раскрывающиеся меню, в которых вы сможете выбрать параметры для восстановления и переустановки загрузчика GRUB в вашей системе Linux. Вы можете снова увидеть это окно, когда восстановление загрузки завершит перезагрузку вашей системы. Если вам не нужно переустанавливать весь загрузчик GRUB, вы можете выбрать первый вариант, чтобы открыть оболочку для выполнения нескольких команд для восстановления загрузки.
Когда появится оболочка, вы можете запустить следующие командные строки в хронологическом порядке, чтобы восстановить загрузчик. Убедитесь, что вы заменили sda своим собственным значением каталога.
Загрузчик GRUB не займет много времени; когда восстановление загрузки завершится, вы можете перезагрузить систему, чтобы вернуть загрузчик GRUB.
Метод 2: восстановление загрузчика GRUB с помощью настольного Live CD
Использование ISO-образа рабочего стола Ubuntu очень похоже на использование USB-накопителя ISO-образа на сервере. В этом методе мы будем использовать последний ISO-файл Ubuntu и записать его на USB-накопитель. Вы можете выполнить шаги, показанные ранее, чтобы записать файл ISO.
Шаг 1. Попробуйте Ubuntu Live Session
После создания загрузочного USB-накопителя вставьте его в свой компьютер и загрузите Ubuntu на своем компьютере. Здесь, несмотря на выбор кнопки «Установить Ubuntu», мы нажмем кнопку «Попробовать Ubuntu», чтобы использовать Ubuntu в качестве живого ISO-файла. Когда появится первая стартовая страница, вам нужно будет указать раскладку клавиатуры, часовой пояс и другую связанную информацию, чтобы начать работу с Ubuntu Live.
Шаг 2. Установите средство восстановления GRUB.
Поскольку мы используем живой USB-диск, нам не потребуются какие-либо привилегии root для запуска команд sudo. Теперь убедитесь, что у вас есть активное подключение к Интернету на вашем компьютере. Теперь вы можете использовать следующие команды, чтобы установить инструмент восстановления загрузчика GRUB в вашей системе.
По завершении установки выполните следующую команду, чтобы открыть средство восстановления загрузки. Вы также можете найти его в меню приложения на верхней панели.
Шаг 3. Восстановите загрузчик в Ubuntu
На первом экране инструмента восстановления загрузки GRUB вы увидите основные параметры, расположение Grub, параметры GRUB и другие полезные вкладки. В основных параметрах вы найдете флажки для переустановки и восстановления загрузчика GRUB на вашем компьютере с Ubuntu.
Используйте файл EFI для выбора местоположения GRUB, если у вас есть отдельные каталоги для файлов root и GRUB. Если ваша система работает в разделе MBR, загляните в параметры MBR, чтобы увидеть параметры восстановления загрузки MBR. На вкладке «Другие параметры» вы найдете варианты восстановления файлов загрузчика Windows или других операционных систем.
Теперь, чтобы восстановить загрузчик GRUB Ubuntu, выберите «Основные параметры» и выберите «Переустановить GRUB», затем нажмите кнопку «Применить». Весь процесс займет не более пяти минут. Если в вашей файловой системе есть дополнительные ошибки разделения, она также обнаружит и покажет вам проблемы.
Шаг 4: перезагрузите систему
После успешного восстановления загрузчика GRUB на экране появится сообщение «Загрузка успешно восстановлена». Он предоставит URL-адрес, по которому вы найдете всю информацию о восстановлении загрузки. Теперь вы можете перезагрузить компьютер и загрузить систему с восстановленным загрузчиком GRUB.
Дополнительный совет: используйте специальный ISO-образ восстановления загрузки
До сих пор мы использовали live CD / USB-диск рабочего стола / сервера Ubuntu для восстановления загрузчика GRUB. Есть варианты восстановления загрузчика с помощью специального ISO-файла загрузчика GRUB. Вы можете загрузить ISO-файл загрузчика GRUB и сделать его загрузочным вместо использования ISO-файла рабочего стола / сервера.
Через командную строку
Бывает, что повреждения не очень серьезные, но система не запускает все программы. В таком случае появляется следующее сообщение: Minimal BASH like line editing is supported. В этом случае загрузить Ubuntu можно с помощью командной строки.
Обязательно нужно знать на каком винчестере находится ядро и система. Для выполнения задачи необходимо последовательно выполнить несколько пунктов:
- Задать команду ls. (Это необходимо для того, чтобы отсканировать диски и разделы. После этого будет выведен список жестких дисков и тип их файловой системы.)
- Выбрать раздел, с которым будем работать.
- Запустить оболочку Grub, ядро Linux, систему boot.
- Открыть терминал и выполнить следующие команды сразу после того как откроется Ubuntu:
- Для исправной и регулярной работы перезапустите устройство.
Entering rescue mode
Итак, в случае проблем с загрузкой Ubuntu вы можете оказаться в режиме grub rescue.
Это может символизировать как простую ошибку, которую легко исправить, так и серьезные проблемы. Рассказываю, что нужно делать в таком случае и как починить загрузку системы.
Первым делом запускаем команду ls и смотрим, какие разделы у нас доступны.
В моем случае доступен только один 3-й раздел, скорее всего корневой. Раздела /boot, который обычно 1-й или 2-й нет. Проверим это наверняка. Смотрим содержимое доступного раздела:
По содержимому раздела видно, что это корневой. Самого раздела /boot, с которого должна начинаться загрузка ubuntu тут не видно. Если его никто специально не удалял и не затирал, то он пропал в результате какого-то сбоя или ошибки. Можно попробовать это исправить. Сделаем это отдельно ниже, а пока рассмотрим случай, когда boot раздел тут все же присутствует и имеет имя, к примеру, (hd0,gpt2). Тогда там же в консоли grub продолжаем.
Далее загружаем некоторые модули. Какие будут нужны, точно не известно и зависит от типов разделов диска. Показываю самые популярные:
Можно для начала попробовать вообще без модулей, а потом добавлять по одному. В самом конце загружаем модуль normal.
После этого у вас должно открыться стандартное меню загрузки Ubuntu. Если это так, то вам повезло. Дальше загрузится система. Вам нужно будет в нее зайти и далее перейти в раздел по восстановлению grub в этой статье. Получилось так, что у вас сам загрузочный раздел жив, но сбились его настройки, поэтому он сам не смог загрузить основную систему. Это не трудно исправить и ниже я показываю как.
Выводы
Вот мы и рассмотрели несколько вариантов исправления загрузчика Grub. Стоит сказать, что некоторые из них могут показаться сложными или даже невыполнимыми. Это не так, каждый из рассмотренных способов нашел подтверждение в виде сотен и тысяч актов исправления загрузчика Grub в опенсорсном сообществе. Кстати говоря, какой из способов выбрать — решать только вам, любой из них достаточно эффективен, чтобы попасть в этот материал.
Возможно вас заинтересуют и другие похожие материалы про починку загрузчика Grub2. Например, в этом материале вы узнаете, как починить GRUB2 если Ubuntu не хочет загружаться. Там более подробно рассказывается, как фиксить груб с помощью утилиты Boot Repair, возможно вам стоит заглянуть туда, если вы не поняли что-то из этого материала. Что же, ну а на сегодня это все. Надеюсь, что данный материал помог вам разобраться в ошибках. Что, в свою очередь, поможет вам их решить.