- Linuxoid
- OpenSource forever
- Восстановление загрузчика GRUB в Ubuntu/Linux Mint
- 22 комментария
- Восстановление GRUB
- Подготовка
- Загрузка в Live-режиме
- Открываем терминал
- Определение разделов
- Вывод fdisk для BIOS
- Вывод fdisk для UEFI
- Монтирование разделов
- Монтирование EFI-раздела
- Выполняем chroot на /mnt
- Генерация файла конфигурации GRUB
- Устанавливаем GRUB
- Перезагрузка компьютера
- Шпаргалка
Linuxoid
OpenSource forever
Восстановление загрузчика GRUB в Ubuntu/Linux Mint
При использовании нескольких ОС в процессе переустановки одной из них может слететь загрузчик. В результате невозможно будет загрузить Linux, так как запись в MBR будет затерта. Но восстановить его очень просто. Загружаемся в LiveCD Ubuntu/Linux Mint, далее требуется смонтировать корневой раздел Linux и ввести команды на восстановление, как это описано здесь. Но это подходит не для всех, да и ошибиться легко. Чтобы не вводить комманды вручную используем замечательную утилиту Boot-Repair, которая доступна в репозитарии PPA. Устанавливаем:
Теперь запускаем из меню или в командной строке:
Теперь выбираем пункт «Рекомендуемый способ восстановления» (Recommended repair). Этого обычно достаточно в большинстве случаев.
Если этого недостаточно нажимаем «Рассширенные настройки», где можем изменить меню загрузки и добавить параметры ядра, сохранить загрузочную запись, указать другой расположение MBR (полезно если появился новый диск).
22 комментария
Какой в ней смысл? Если загрузчик слетит то загружаться ОС не будет и не запустишь программу, нужен будет лайв cd для восстановления загрузчика. Если я не прав поправьте пожалуйста.
Ну так написано. Загружаемся в LiveCD, ставим и восстанавливаем одной кнопкой.
boot-repair ввожу, отвечает command not found
2Andrey А ставил его?
Все сделал, как написано. Все заработало. А ведь до этого долго искал на форумах, но ничего полезного там не нашел. Спасибо
Очень толково написано. Действительно помогает после переустановки Винды. Спасибо большое!
Удобная штука, особенно когда много разделов, и непонятно что и где находится. Рекомендую с ее оффсайта скачать сборку ubuntu, где она уже содержится (плюс еще пара плюшек дополнительных кроме нее)
востанавливал загрузчик backtrack 5 R3 после переустановки windows 8 на нетбуке eMachines 10» — идеально сработало — с одной кнопочки, только перед установкой boot-repair предложил сначала (apt-get install python-software-properties) а установка (sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update) затем (sudo apt-get install -y boot-repair && boot-repair)
We are have now:
Премного благодарен автору за эту статейку,которая мне помогла,Перед этим перелопатив кучу ссылок в и-нете.Все получилось с первого раза.Респект и уважуха автору.
Спасибо большое.Мне программа пригодилась.Поскольку я далеко не гуру в linux то восстановление загрузчика пугало.Я сделал так ,сначала добавил программу в свой минт.Затем после переустановки виндовс вставил диск с super grub disc,загрузил свой минт,запустил программу и все 🙂
это лучший из проверенных мной способов востановления загрузчика.
теперь при загрузке у меня корректно отображаются установленные ОСы!
Была на компе Win 7 + Linux Mint. Поставил второй винчестер, решил переустановить Линукс. После переустановки Линукса слетел загрузчик, не было выбора ОС, загружался только Линукс. Прога быстро все восстановила в автоматическом режиме. Теперь на загрузке показываются варианты загрузки Линукса и Win 7
После установки обновления Win7 на Win10 слетел загрузчик. До этого был установлен Linux Mint 17.2 второй системой. Рекомендуемым способом восстановления загрузчик был восстановлен, но загружается только Win10. Разделов линукса не вижу. Запустил эту программу заново, закладки GRUB location GRUB option неактивны. Буду пробовать что-то другое.
спасиботогромное.
пол дня потратил, все форумы перерыл.
спомощью этой утилиты и «рекомендованного способа» сразу все получилось.
Все отлично работает после загрузки с live cd и установки через терминал
Спасибо, все отработало отлично с одним уточнением после переноса диска, на котором был Windows 10 и Linux Mint 19, на другой компьютер. После переноса грузилась только винда без возможности выбора системы. Загрузился с Linux Mint 19 Live CD, сделал все как в видео, но эффекта не дало. Если так произошло — после рестарта заходим в винду, открываем командную строку от имени администратора(пишем в поиск CMD, правый клик — запустить от администратора) и пишем в командную строку
bcdedit /set
С учетом пробелов и в одну строку. Далее жмем ентер. Это прописывает вызов загрузчика Ubuntu. Но т.к. Linux Mint построен на Ubuntu, то мы сможем с него загрузиться. Делаем рестарт и видим, что у нас доступен запус убунту и винды. Жмем Ubuntu — запускается наш Linux Mint в котором после обновления через апдейт менеджер груб перепишется с Ubunt -овского на Linux Mint-вский.
От души благодарю, Брат. 2 дня изучался и курил форумы. Переносил с хдд на сад win7 и linux mint с помощью Акрониса. Загрузчик восстановил в итоге нажатием одной кнопки (рекомендованный способ). Всех благ!
Реально помогло, спасибо огромное, думал всё- капец.
Господи, зачем «левые» программы, зачем рассматривать их настройку?!…
Ну всё же делается в четыре тычка!
— грузимся с LiveCD или USB;
— смотрим, где находится Ваш установленный линух: sudo fdisk -l (первый, помеченный как Linux. Пусть для определённости это будет sda2);
— sudo mount /dev/sda2 /mnt
— sudo grub-install —root-directory=/mnt /dev/sda
— sudo reboot
ВСЁ! Подойдёт для подавляющего большинства пользователей персональных PC.
Говорят, что редких случаях Винда не определяется. Тогда грузимся в уже имеющийся линух и даем дополнительную команду: sudo update-grub
Ну теперь уж точно всё!
Супер. Все прошло успешно с первой попытки! Даже не понадобилось идти в «Дополнительные настройки». Огромная благодарность автору!
Источник
Восстановление GRUB
В данной статье рассматривается процесс восстановления загрузчика GRUB 2.
Причины, по которым может понадобится восстановить GRUB, могут быть разными.
Очень часто требуется восстанавливать GRUB после установки Windows. Если у вас был установлен Linux и вы установили в соседний раздел или на соседний диск Windows, то после перезагрузки компьютера загрузится Windows, как будто Linux вообще пропал. Загрузчик GRUB даже не появился. Иногда подобное происходит при обновлении существующего Windows.
Иногда требуется восстановление GRUB после установки Linux, когда неверно был выбран раздел для установки загрузчика.
Во всех случаях нужно выполнить восстановление загрузчика GRUB. Существуют разные способы восстановления. В данном руководстве рассматривается процесс использованием загрузочного Live-образа Linux. Загрузившись в Live-систему вам нужно будет ввести несколько команд, чтобы выполнить восстановление. Рассматривается способ восстановления без использования сторонних программ.
Также иногда различают процесс восстановления для систем с BIOS и с UEFI. Описанный ниже способ рассматривает оба этих случая. Я тестировал его как на компьютерах с традиционным BIOS, так и с UEFI.
Подготовка
Для восстановления GRUB потребуется загрузочный диск или флешка с дистрибутивом Linux. Если у вас его нет, то нужно скачать образ с дистрибутивом. Например, можно скачать ISO образ Ubuntu.
Для создания загрузочной флешки можно воспользоваться программой Etcher. Она работает в Linux, Windows и MacOS. Подробная инструкция: Как создать загрузочную флешку.
Загрузка в Live-режиме
Теперь нужно загрузиться с созданного диска или флешки.
Чтобы это сделать сначала нужно в BIOS выбрать приоритет загрузки с CD/DVD или с USB (если вы используете флешку).
На современных компьютерах, где используется BIOS/UEFI, для входа в BIOS нужно при включении компьютера удерживать специальную клавишу. У разных производителей клавиша может быть разной. Обычно это: F2 , Del , F10 , Esc , F11 или F3 .
На старых компьютерах, где используется классический BIOS, чтобы войти в BIOS нужно при загрузке компьютера, в самом начале, когда появляется логотип материнской платы, нажать специальную клавишу. Для разных материнских плат клавиша может быть разной. Обычно это одна из клавиш: Del , F1 , F2 , F8 , F10 или какая-нибудь другая, или даже сочетание клавиш. Подробности: Настройка BIOS для загрузки с CD/DVD-диска или с USB-носителя
Открываем терминал
Итак, вы загрузились в Live-режиме. Теперь нужно открыть терминал.
В Ubuntu и некоторых других дистрибутивах это можно сделать нажатием сочетания клавиш Ctrl+Alt+T . Или запустить терминал через меню программ.
Определение разделов
Теперь нужно определить раздел диска, на котором был установлен GRUB.
Выведем список разделов, для этого выполняем команду (в конце команды стоит строчная буква L):
Вывод fdisk для BIOS
Пример вывода команды:
В моем случае мы видим 2 диска: /dev/sda (SSD диск) и /dev/sdb (флешка, с которой сейчас загружена Live-система).
Нас интересует диск /dev/sda . На диске /dev/sda создано несколько разделов. В моем случае /dev/sda4 , на котором установлен Windows, а также 4 раздела с пометкой Linux (см. последний столбец таблицы). У вас скорее всего может быть один раздел Linux (корневой раздел) или два раздела (корневой и home). На одном из этих разделов установлен GRUB.
То есть из таблицы вы должны определить какой раздел является корневым, на нем скорее всего у вас установлен GRUB. В моем случае GRUB установлен в раздел /dev/sda2 . Далее по тексту я буду его использовать (вы должны будете указывать свой раздел).
Иногда бывает, что для загрузчика GRUB выделен отдельный раздел (он называется boot-раздел). Если это так, то на следующем шаге вам нужно будет примонтировать корневой раздел и раздел с загрузчиком.
Вывод fdisk для UEFI
Для новых компьютеров с UEFI вывод команды fdisk -l может быть примерно следующим:
Нам нужно определить, на каком разделе установлен Linux (корневой раздел), а также определить EFI-раздел. В моем случае это разделы: /dev/nvme0n1p5 и /dev/nvme0n1p1 , которые расположены на диске /dev/nvme0n1 .
Монтирование разделов
Примонтируем корневой раздел. Выполняем команду (вместо /dev/sda2 вы должны указать свой раздел):
Мы примонтировали раздел /dev/sda2 в директорию /mnt .
Если для загрузчика у вас выделен отдельный раздел, то нужно примонтировать еще и его (вместо /dev/sdX укажите ваш boot-раздел):
Теперь можно посмотреть содержимое директории /mnt , чтобы убедиться, что мы примонтировали верный раздел:
Вывод команды должен быть примерно следующим. Обратите внимание есть ли в этом списке каталог /boot , так как именно в нем установлен GRUB.
Также можно проверить, что директория boot не пустая:
У меня вывод команды выглядит следующим образом. Обратите внимание на присутствие каталога с именем grub .
Далее нужно создать ссылки на несколько директорий, к которым GRUB должен иметь доступ для обнаружения всех операционных систем. Для этого выполните команды:
Монтирование EFI-раздела
Если у вас используется UEFI, то еще нужно примонтировать EFI-раздел в директорию /mnt/boot/efi (выше я указал пример вывода команды fdisk -l в котором показан EFI-раздел):
Выполняем chroot на /mnt
На предыдущем шаге мы смонтировали все необходимые директории в директорию /mnt . Теперь переключимся (выполним chroot ) на данную директорию. Выполняем команду:
Генерация файла конфигурации GRUB
Данный шаг нужно выполнять не всем. Если у вас был установлен GRUB и вы уверены, что его конфигурация верная, то можно перейти к следующему шагу.
Для генерации файла конфигурации GRUB используется команда update-grub . Данная команда автоматически определяет файловые системы на вашем компьютере и генерирует новый файл конфигурации. Выполняем команду:
В выводе команды будет показано, какие операционные системы были найдены.
Если вдруг утилита update-grub не определила ваш Windows (у меня такое было для UEFI), то можно будет запустить update-grub повторно уже из вашей Linux-системы, когда вы в нее загрузитесь (мне это помогло и Windows определился).
Устанавливаем GRUB
Осталось выполнить установку GRUB на диск. Мы определили раздел на котором у нас установлен GRUB на первом шаге данного руководства. В моем случае это раздел /dev/sda2 , который расположен на диске /dev/sda .
Для установки GRUB используется команда grub-install , которой нужно передать в качестве параметра диск, на который будет выполняться установка (в моем случае это диск /dev/sda ):
https://askubuntu.com/questions/88384/how-can-i-repair-grub-how-to-get-ubuntu-back-after-installing-windows
If Ubuntu is installed in EFI mode, and EFI partition UUID has changed, you may need to update it in /etc/fstab. Compare it:
blkid | grep -i efi
grep -i efi /etc/fstab
Перезагрузка компьютера
Выходим из окружения chroot, для этого выполняем команду:
Отмонтируем все разделы, которые мы примонтировали:
Если вы монтировали boot-раздел, то его тоже нужно отмонтировать:
Если вы монтировали EFI-раздел, отмонтируем:
Отмонтируем корневой раздел:
Перезагружаем компьютер. Для этого выполняем команду:
Если во время перезагрузки компьютера меню GRUB не появилось, то это еще не значит, что он не восстановился. Возможно, просто установлена нулевая задержка и меню не показывается. Чтобы показать меню GRUB нужно во время загрузки, после того, как появился логотип материнской платы:
- удерживать клавишу Shift , если у вас классический BIOS;
- нажать Esc , если у вас UEFI.
Если у вас, при выполнении grub-update, не определился Windows и не был добавлен в меню GRUB, то уже загрузившись в вашу систему Linux (не LiveCD), откройте терминал и выполните:
Мне это помололо на компьютере, который использует UEFI.
Шпаргалка
Мы рассмотрели процесс восстановления загрузчика GRUB 2. Для удобства привожу краткую шпаргалку по командам, которые мы выполняли. Учитывайте, что названия и имена разделов ( /dev/sd. ) у вас могут отличаться.
Источник