Восстановление загрузчика grub в ubuntu linux 16.04 /15.10 / 15.04

Через утилиту восстановления загрузчика

Поскольку предыдущий метод может быть не всем под силу, воспользуемся той особенностью Ubuntu, что она может полноценно работать, будучи запущенной с флешки. Для этого мы применим специальную утилиту boot-repair. Что нужно сделать?

  1. Запустить Ubuntu с флешки и убедиться, что имеется активное интернет-соединение.
  2. Найти терминал и запустить в нём одну за другой такие команды:
  1. В меню приложений найти «Восстановление загрузчика» и включить утилиту.
  2. Кликнуть на кнопку «Рекомендуемый способ восстановления» и дождаться окончания процедуры.
  3. В большинстве ситуаций этих действий вполне достаточно для нормальной работоспособности загрузчика Grub Linux.

Helping newbies

The different approach of Rescatux is found in its main program: Rescapp. Rescapp is a nice wizard that will guide you through your rescue tasks.

At the first glance Rescapp seems to be just a launcher for Rescue tools:

. However it has some Support features that make it unique:

  • Chat: Open the chat for asking help directly in Rescatux channel.
  • Share log: After running an option you can share its log (the action registry that it has done) so that in the chat they can help you better. O better, even, you can help debug and fix Rescatux bugs on the fly.
  • Share log on forum: Prepares a forum post alike text so that you can just copy and paste it in your favourite forum. Logs are nicely inserted into it with symbols.
  • Boot Info Script: Run Boot Info Script option to share your computer configuration (specially boot one).

More than this the non-support features such as:

  • Check and fix filesystems (Video)
  • Blank Windows passwords (Video)
  • Change Gnu/Linux password (Video)
  • Regenerate sudoers file (Video)
  • Restore Grub (Video)
  • Update Grub Configuration (Video)
  • Restore Windows MBR (BETA) (Video)

are being driven with nice wizards :

GRUB 2 и UEFI

Машины с прошивками UEFI (т.е., практически все машины, продающиеся в течение нескольких последних лет) добавили новый уровень сложности в процесс диагностики проблем системного загрузчика GRUB 2. Несмотря на то, что процедура восстановления работоспособности системного загрузчика GRUB 2, установленного на машине с прошивкой UEFI, не значительно отличается от процедуры восстановления работоспособности этого же загрузчика на машине без прошивки UEFI, в новые версии прошивок вносятся различные изменения, которые являются причиной различных результатов процесса восстановления работоспособности системного загрузчика.

В системах на основе UEFI вам не придется устанавливать что-либо в основную загрузочную запись. Вместо этого вы должны будете установить загрузчик Linux с поддержкой EFI в системный раздел EFI (EFI System Partition, ESP) и выбрать данный загрузчик в качестве используемого по умолчанию с помощью такого инструмента, как efibootmgr в Linux или bcdedit в Windows.

На данный момент системный загрузчик GRUB 2 должен корректно устанавливаться в процессе установки любого из популярных дистрибутивов Linux, что позволяет последнему успешно сосуществовать с ОС Windows 8. Однако, в том случае, если вы получите в результате неработоспособный системный загрузчик, вы сможете восстановить работоспособность системы с помощью live-образа дистрибутива Linux. В процессе загрузки live-образа дистрибутива вам следует убедиться в том, что вы осуществляете загрузку в режиме UEFI. Меню загрузки компьютера должно содержать по два элемента для каждого из съемных носителей — для загрузки в обычном режиме и в режиме UEFI. Используйте последний режим для организации доступа к переменным EFI посредством файлов из директории /sys/firmware/efi/.

Из live-окружения следует смонтировать корневую файловую систему неудачно установленного дистрибутива таким образом, как описано в данном руководстве. Вам также придется смонтировать системный раздел EFI (ESP). Если предположить, что данному разделу соответствует файл устройства /dev/sda1, то вы можете смонтировать данный раздел с помощью следующей команды:

sudo mount /dev/sda1 /mnt/boot/efi

После этого необходимо загрузить модуль ядра efivars с помощью команды modprobe efivars перед созданием окружения chroot с корневой файловой системой неудачно установленного дистрибутива таким образом, как описано в данном руководстве.

Теперь в том случае, если вы используете дистрибутив Fedora, вы можете переустановить системный загрузчик с помощью следующей команды:

yum reinstall grub2-efi shim

После нее следует выполнить команду для генерации нового файла конфигурации системного загрузчика:

grub2-mkconfig -o /boot/grub2/grub.cfg

Пользователи дистрибутива Ubuntu могут выполнить эту же операцию с помощью команды:

apt-get install --reinstall grub-efi-amd64

После восстановления системного загрузчика следует выйти из окружения chroot, отмонтировать все смонтированные разделы жесткого диска и перезагрузить компьютер, перейдя в меню GRUB 2.

Для деактивации сценария из директории /etc/grub.d вам нужно всего лишь убрать бит исполнения, с помощью команды, аналогичной команде chmod -x /etc/grub.d/20_memtest86+, которая позволяет убрать строку «Memory Test» из меню загрузки

Шаг три – делаем мультизагрузочное меню

«Семерка» загружается, но мы же хотим иметь возможность воспользоваться и Ubuntu после ее установки. Для этого придется добавить новый загрузочный сектор Grub, сохраненный ранее в отдельный файл. Для этого нам потребуется загрузиться в Windows и скачать приложение EasyBCD.

  • Выполняем обновление программы, если оно будет обнаружено.
  • Кликаем «Добавить запись».

Переходим во вкладку «Linux/BSD», где можно создать загрузочный сектор типа Grub и интегрировать его в загрузчик.

Из выпадающего меню «Тип» выбираем «Grub 2».

Вводим имя для идентификации операционной системы. Имя может содержать специальные и кириллические символы, и цифры.

Жмем «Добавить».

Thank you

  • cjg67 for his work on improving Rescapp documentation grammar.
  • cjg67 for his incredible work on packaging Rescapp to Arch and Fedora. (BTW one of these days I need to add a page dedicated to Rescapp where I feature those packages.)
  • eris23 from linuxtracker community who has uploaded many times the Rescatux isos to the torrent site.
  • Many anonymous users which create new bugs at rescapp issues page.
  • Many anonymous users which came back to the Rescatux chat after trying our given advice in the chat
  • Alf Gaida (agaida) on the many times he has helped me on integrating LXQt to Rescatux.
  • bTactic, for helping Rescatux with their Zimbra based email service and their hosting.

От чего могут возникнуть проблемы

Одна из самых распространенных причин — это неправильный порядок установки двух операционных систем (Linux и Windows). Допустим, если вы захотите установить две этих операционных системы на свой ПК — вам непременно стоит знать правильную последовательность:

  • Сначала устанавливаем Windows
  • И только потом уже Linux

Если, например, сделать наоборот, то как раз-таки Grub будет поврежден; система будет грузиться напрямую в Windows, а дистрибутив Linux останется недоступным.

Grub может сломаться и по другим причинам. Например, из-за попыток ручного изменения параметров запуска (при недостатке опыта), в таком случае нужно будет либо вручную убирать лишнее, либо полностью переустанавливать Grub.

Восстановление в rescue mode

При отсутствии загрузочного диска, можно восстановить Grub из его консоли. Восстановление происходит следующим образом: сначала нужно подгрузить все модули, чтобы стала доступна вся функциональность Grub, а затем уже запуститься с нужного раздела.
Как известно, Grub состоит из двух частей.
Первая часть записана в MBR диска. Она содержит базовую функциональность, то есть в ней есть консоль в rescue mode и ничего больше. Вначале нужно определить, на каком разделе находится вторая часть груба (она лежит в каталоге /boot/grub), подгрузить недостающие модули. И только потом можно будет дать команду запуска с нужного раздела.
В rescue mode доступно всего четыре команды:

 ls
set
unset
insmod

Вначале следует дать команду:

ls

В ответ она выведет, например, следующее:

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)

Иногда Grub может неправильно опеределить, какие файловые системы находятся на разделах дисков. В данном случае определяет их как msdos.
Нам нужно постараться угадать, какие диски мы видим. В данном случае видно два диска. Диск с индексом 0 содержит три раздела, диск с индексом 1 содержит два раздела. Зная структуру своих дисков несложно определить нужный диск.

Grub называет разделы в обратном порядке. И становится непонятно, что имеется в виду под (hd0,msdos3) — первый раздел или третий? Тут можно выкрутиться, использовав синтаксис (hd0,1). Нужно помнить, что в Grub счет дисков начинается с 0, а счет разделов — с 1.
Предположим, что Линукс установлен на первый диск в первый раздел, то есть (hd0,1).
Даем команду:

set prefix=(hd0,1)/boot/grub 
set root=(hd0,1)

Этими командами мы указываем использовать диск (hd0,1) для дальнейших команд. После чего нужно проверить, действительно ли на этом разделе есть то, что нам нужно. Даем команду:

ls /boot/grub

если в ответ получаем список всех файлов в этой директории, то диск и раздел выбраны правильно.
Подгружаем модули:

insmod ext2
insmod normal
normal

Проверьте правильность написания первой команды для файловых систем ext3 и ext4

Если ОС расположена на разделе, отформатированном в btrfs,
то выполняем следующие команды:

set prefix=(hd0,1)/@/boot/grub
set root=(hd0,1)

подгружаем модули:

insmod btrfs
insmod normal

запускаем GRUB:

normal

После чего Grub перейдёт в полнофункциональный режим. Он автоматически найдет все операционки, которые можно подгружать, и покажет своё Grub-меню.

Дальнейшее восстановление сводится к тому, чтобы загрузить нужный нам Linux, и в нем от рута дать команду:

grub-install /dev/sdX

Где sdX, диск, на который нужно установить Grub.

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

Подавляющее большинство проблем, связанных с системным загрузчиком GRUB 2, может быть просто решено путем нажатия единственной кнопки приложения Boot Repair. Это изящное, простое приложение имеет интуитивный пользовательский интерфейс и позволяет сканировать и распознавать различные типы дисков и схем дисковых разделов, а также может выяснять расположение и корректно идентифицировать установленные в рамках этих разделов операционные системы. Утилита может работать как на обычных компьютерах с основными загрузочными записями (Master Boot Record, MBR), так и на новых компьютерах с UEFI и таблицами разделов GUID (GUID Partition Table, GPT).

Простейший способ использования утилиты Boot Repair заключается в ее установке в рамках Live-сессии дистрибутива Ubuntu. Запустите live-версию дистрибутива Ubuntu на машине с неработоспособным системным загрузчиком и установите приложение Boot Repair, в первую очередь добавив соответствующий репозиторий PPA с помощью команды:

sudo add-apt-repository ppa:yannubuntu/Boot Repair

После этого обновите список репозиториев с помощью команды:

sudo apt-get update

Наконец, вы можете установить приложение с помощью команды:

sudo apt-get install -y Boot Repair

После окончания процесса установки вы сможете запустить приложение. Оно просканирует ваш жесткий диск перед отображением пользовательского интерфейса, который состоит из нескольких кнопок. Для выполнения предложенных приложением действий вы можете просто нажать на кнопку «Recommended Repair», которая позволит исправить большинство проблем, связанных с системным загрузчиком. После восстановления вашего системного загрузчика утилита выведет ссылку, которую следует запомнить. При переходе по этой ссылке вы сможете ознакомиться с детальной информацией о ваших дисках, включая их разделы, а также с содержимым важных файлов конфигурации GRUB 2, таких, как файлы из директории /etc/default/grub и файл /boot/grub/grub.cfg. Если приложению не удастся восстановить ваш системный загрузчик, вы сможете разместить данную ссылку на форуме вашего дистрибутива для того, чтобы посетители смогли ознакомится со схемой разделов вашего жесткого диска и дать полезные советы.

Приложение Boot Repair позволяет изменять параметры системного загрузчика

Режим восстановления в Linux

Режим восстановления — это опция в загрузчике Grub. Итак, чтобы получить к нему доступ, перезагрузите компьютер с Linux. Процесс перезапуска в Ubuntu быстро выполняется множеством различных способов, включая нажатие на кнопку «Перезагрузить» на рабочем столе, нажатие кнопки полного сброса на самом ПК или использование команд reboot или systemctl reboot в окне терминала.

sudo reboot

Или, если ваша операционная система запрещает доступ к перезагрузке, запустите:

sudo systemctl reboot

Когда ваш компьютер с Ubuntu перезагрузится, на экране появится загрузчик Grub с несколькими вариантами. В большинстве операционных систем Linux вы увидите довольно много записей. Эти записи включают:

Последний выпуск ядра Ubuntu Linux для вашей ОС (запись по умолчанию)Расширенные параметры загрузки для вашей ОС Linux (часто называемые расширенными параметрами для Ubuntu)Тест памяти (memtest86 +)Тест памяти (memtest86 +, последовательная консоль 115200)

Найдите в меню выбора запись «Дополнительные параметры». Затем, как только вы его найдете, используйте стрелку вниз, чтобы переместить на него выделение. Затем нажмите Enter, чтобы получить доступ к подменю «Дополнительные параметры» в загрузчике Grub.

В подменю «Дополнительные параметры» в списке появится несколько параметров. Вверху будет последнее ядро, которое использовала ваша операционная система до того, как было обновлено до того, которое вы используете сейчас (хотя не каждая ОС Linux делает это). После откатного ядра идет ядро ​​«восстановления».

Ядро «восстановления» — это обычное ядро ​​Linux с небольшой настройкой Grub, которая позволяет пользователям быстро загружаться в «режим восстановления» в своей системе, чтобы они могли получить доступ к командной строке, чтобы что-то исправить и восстановить сломанную систему.

Чтобы загрузить ядро ​​«восстановления» через Grub, нажмите стрелку вниз и переместите селектор Grub в его верх. После этого нажмите клавишу Enter, чтобы система загрузила его.

После того, как вы выбрали ядро ​​«восстановление» в меню Grub, вы увидите окно с надписью «Меню восстановления». В этом меню есть несколько инструментов и опций, к которым у вас будет доступ.

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

Режим восстановления — Очистить

Функция «Очистить» в режиме восстановления для Ubuntu позволит вам быстро освободить место в системном разделе.

Чтобы использовать функцию «Очистить», загрузите режим восстановления. Затем с помощью стрелки вниз выделите параметр «очистить» и нажмите Enter.

После нажатия клавиши Enter на «очистке» появится окно терминала. Следуйте инструкциям на экране, и Ubuntu сделает все возможное, чтобы освободить место.

Режим восстановления — Dpkg

Параметр «Dpkg», доступный пользователям Ubuntu в режиме восстановления, позволяет исправлять и удалять любые потенциально поврежденные пакеты, которые вызывают проблемы в вашей системе.

Примечание: эта функция требует подключения к Интернету. Выберите «Сеть» в списке «Режим восстановления», чтобы подключиться к сети, прежде чем пытаться ее использовать.

Чтобы использовать его, просмотрите список режима восстановления для «Dpkg» с помощью стрелки вниз. Затем нажмите Enter, чтобы запустить его. Прочтите подсказки на экране и позвольте Ubuntu удалить все проблемные пакеты.

Режим восстановления — Fsck

Функция Fsck в режиме восстановления может быстро исправить поврежденный жесткий диск, сканируя его на наличие грязных байтов и удаляя их. Эта функция очень полезна, поскольку грязные байты на дисках могут вызвать сбой загрузки Ubuntu.

Чтобы использовать «Fsck», выделите его в меню режима восстановления с помощью стрелки вниз, затем нажмите Enter, чтобы запустить его. После этого расслабьтесь и позвольте ему автоматически удалить поврежденные данные.

Режим восстановления — Grub

«Grub» в окне режима восстановления позволяет Ubuntu сканировать вашу систему и автоматически обновлять загрузчик, переустановив систему Grub.

Чтобы запустить обновление загрузчика, найдите в меню «Grub» и выберите его с помощью стрелки вниз. Нажмите клавишу Enter, чтобы начать обновление.

Recovery Mode — Root

Иногда ваша система Ubuntu Linux может отказываться загружаться из-за неправильной конфигурации, системной ошибки и т. Д. Если другие варианты восстановления, о которых мы говорили, этого не делают, будет вариант «Корневой».

Чтобы получить root-доступ в режиме восстановления, вам не нужно запоминать пароль. Вместо этого выберите «Корень» со стрелкой вниз, затем нажмите Enter, а затем введите второй раз.

Быстрое исправление

Если исполнение команды grub2-install не приводит к каким-либо положительным изменениям и вы не можете загрузить дистрибутив Linux, вам придется полностью переустановить и перенастроить системный загрузчик. Для выполнения этой задачи можно воспользоваться полезной утилитой chroot, которая позволяет временно заменить корневую директорию live-окружения на корневую директорию установленной системы Linux, работоспособность которой необходимо восстановить. Вы можете использовать для этой цели Live CD любого дистрибутива Linux, на котором присутствует утилита chroot. Однако, вам следует убедиться в том, что вы используете Live CD для той же архитектуры центрального процессора, что и установленный на жестком диске дистрибутив. Таким образом, если вы желаете использовать утилиту chroot для восстановления работоспособности 64-битной установленной системы, вам понадобится Live CD для 64-битных систем.

После загрузки Live-окружения в первую очередь следует проверить разделы жесткого диска машины. Используйте команду fdisk -l для вывода списка всех разделов жесткого диска и выясните номер раздела, на котором установлен системный загрузчик GRUB 2, работоспособность которого вы желаете восстановить.

Давайте предположим, что вам нужно восстановить работоспособность системного загрузчика дистрибутива, установленного на разделе жесткого диска, который представлен файлом устройства/dev/sda5. Откройте эмулятор терминала и смонтируйте этот раздел:

sudo mount /dev/sda5 /mnt

Теперь вам придется смонтировать директории, которые должны быть доступны системному загрузчику GRUB 2 для корректного выявления других установленных на компьютере операционных систем:

$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /dev/pts /mnt/dev/pts
$ sudo mount --bind /proc /mnt/proc
$ sudo mount --bind /sys /mnt/sys

Теперь вы можете покинуть live-окружение и перейти в окружение установленного на разделе, представленном файлом устройства /dev/sda5, дистрибутива с помощью утилиты chroot:

$ sudo chroot /mnt /bin/bash

Все готово для установки, проверки и обновления системного загрузчика GRUB 2. Как и ранее, для переустановки системного загрузчика следует использовать команду:

sudo grub2-install /dev/sda

Ввиду того, что команда grub2-install не затрагивает файл конфигурации grub.cfg, вам придется создать его вручную с помощью следующей команды:

sudo grub-mkconfig -o /boot/grub/grub.cfg

Эта последовательность команд должна помочь исправить проблемы системного загрузчика. Теперь на вашей машине будет установлена новая копия системного загрузчика GRUB 2 со списком всех установленных на ней операционных систем и дистрибутивов. Перед тем, как перезагрузить компьютер, следует покинуть окружение chroot и отмонтировать все использованные файловые системы в следующем порядке:

$ exit
$ sudo umount /mnt/sys 
$ sudo umount /mnt/proc
$ sudo umount /mnt/dev/pts
$ sudo umount /mnt/dev 
$ sudo umount /mnt

После этого вы можете безопасно перезагрузить машину, которая должна вновь вернуться под контроль системного загрузчика GRUB 2, находящегося под вашим полным контролем!

Удаление Grub при восстановлении ОС Windows

Рассмотрим ситуацию, когда пользователю компьютера необходимо удалить операционную систему Линукс вместе с её стандартным загрузчиком, оставив при этом ОС Windows с другой программой. Если в системе используется таблица MBR, то подобные манипуляции выполняются крайне легко.

В Интернете можно встретить распространенную рекомендацию: «Возьмите установочный диск Виндовс и загрузитесь с него в режиме восстановления». А далее предлагается выполнение специальных команд. Они будут указаны ниже.

Первое действие:

bootrec \fixboot

Второе действие:

Стоит отметить тот факт, что данный совет является эффективным и вполне применимым на практике. Однако это не самый быстрый способ восстановления стандартного загрузчика Windows, который понадобится для полноценной работы системы. Чтобы удалить Grub и вернуть «виндовскую» программу, пользователю необходимо воспользоваться специальной утилитой.

Искать программу на официальном сайте – занятие бессмысленное, поскольку китайский интерфейс окажется многим не по зубам. Перед скачиванием софта выберите подходящую разрядность для своей ОС.

После этого нужно действовать, следуя простой инструкции:

  1. Запустите программу Bootice на своём компьютере.
  2. Выделите диск, на котором наличествует загрузчик Grub.
  3. Далее нажмите на «Proccess MBR».
  4. В открывшемся окне выберите вариант «Windows NTx …». Скорее всего, он будет находиться в самом низу этого списка.
  5. Затем подтвердите своё решение путем нажатия на кнопку «Install / Config».
  6. Выберите нужную версию MBR на своё усмотрение.

При правильном выполнении указанных действий перед пользователем появится маленькое окошко с подтверждением об удачной замене загрузчика. Нажмите на кнопку «ОК» и выполните перезагрузку вашего устройства. Проверьте, вступили ли изменения в силу.

Установка загрузчика Grub в GPT для BIOS

Во-первых, мы можем ничего не менять и установить Grub так, как описано в предыдущем способе. Но тогда он будет установлен в область совместимости с MBR, а это не надежно. Поэтому рекомендуется установить grub так, как описано ниже, на отдельный раздел.

Нужный нам раздел можно создать в установщике любого дистрибутива, если вы выполняете установку в графическом интерфейсе или с помощью gparted. Нам нужен раздел размером 1 Мегабайт без файловой системы и с меткой grub_bios:

Готово. Если у вас нет под рукой доступа к графическому интерфейсу, вы можете создать такой раздел через терминал. Утилита fdisk не поддерживает работу с gpt, поэтому будем использовать gfdisk. Сначала запустите утилиту:

sudo gdisk /dev/sda

Чтобы создать новый раздел нажмите n и выберите номер раздела:

Соглашаемся с начальным сектором, будет использован первый же свободный:

Выбираем конечный сектор раздела. По умолчанию будет использоваться максимальный. Нам нужен раздел размером 1 Мб. Размер одного сектора GPT — 512 байт, поэтому нам нужен раздел размеров 2048 секторов. Таким образом, конечный сектор будет 24000 с чем-то.

HEX Code — это тот код, который скажет системе, что этот раздел нужно использовать для Grub, нужно установить ef02
:

Готово, осталось нажать w для записи изменений на диск:

sudo grub-install /dev/sda3

Осталось создать конфигурационный файл grub:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

Теперь переходим к самому сложному, как установить grub efi.

About «Error No Such Partition. Grub Rescue»

«I was dual-booting Windows 10 and Linux Ubuntu on my desktop. Since the system was unable to detect Ubuntu in the initial menu that appears on rebooting, I deleted the partition onto which I had installed Ubuntu while in Windows 10. I then installed PowerISO, which prompted me to reboot the system. Now, however, it led me to the grub rescue prompt and said, «no such partition. Grub rescue>», How can I fix no such partition grub rescue Windows 10?»

No such partition is a common error that usually occurs in Windows & Ubuntu dual boot system. It always appears when you intend to boot your computer but get stuck at the boot screen with the following error messages:

Example 1:

error: no such partition.
grub rescue>

Example 2:

error: no such partition.
Entering rescue mode…
grub rescue>

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
DS-сервис
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: