Восстановление GRUB 2 после установки Windows

Восстановление GRUB после установки Windows

Сегодня я хотел бы показать вам способ, как можно восстановить GRUB 2 после установки или переустановки Windows на компьютер с Linux. И еще один способ, как это можно сделать это из-под Debian описан в этой заметке.

Если вы на своем компьютере используете дуалбут из Windows и Linux, то вероятно уже знаете, что во время установки ОС для того, чтобы было меньше возни, лучше устанавливать сначала ОС от Microsoft а потом только Ububtu, Debian или что вы там желаете установить. Связано это с тем, что Windows не видит других операционных систем кроме своих и поверх загрузчика GRUB записывает в MBR свой загрузчик. Соответственно, если вы установите сначала Linux а потом Windows, то в итоге не сможете загрузить Linux, так как его просто не будет в списке загрузки. Но что же делать если вам все же необходимо переустановить Windows или просто установить ее на компьютер с Linux? Не переустанавливать же ради этого и Linux? Нет. Просто после всего, что вы сделаете нужно будет восстановить загрузчик GRUB.

Для демонстрации я приведу свой случай с виртуальными машинами, но данный способ ничем не отличается от восстановления GRUB на реальном железе.

У меня на один виртуальный жесткий диск были установлены Ubuntu 14.04 и Windows 7. И вот мне захотелось попробовать developer версию Windows 10. Я решил установить ее поверх семерки. Как и положено, после всех манипуляций Windows 10 заработала, а Ubuntu не запускалась. Так как Ubuntu мне нужна была для работы я решил восстановить затертый GRUB.

Восстановление GRUB 2

Сначала необходимо загрузится с LiveDVD. Когда система загрузится, открываем терминал (Ctr+Alt+T) и смотрим структуру разделов с помощью команды:

sudo fdisk -l

Моя таблица разделов

У меня, как видно по выводу команды, диск разделен на 6 разделов: два NTFS для Windows, Extended (расширенный) и три отмечены как Linux для Ubuntu. Чтобы установить GRUB необходимо примонтировать корневой раздел Ubuntu – мой sda5:

sudo mount /dev/sda5 /mnt

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

sudo grub-install --root-directory=/mnt /dev/sda

Установка GRUB

После этого можно перезагрузить компьютер:

sudo reboot

GRUB восстановлен. Но остался один момент. Сейчас на виртуальной машине была установлена Windows 10, но в меню загрузчика по прежнему она отображалась как семерка, из-за чего при попытке ее запуска выскакивала ошибка. Чтобы исправить это достаточно было просто загрузится в Ubuntu (не LiveDVD) и через терминал обновить загрузчик:

sudo update-grub

Вот так просто можно восстановить GRUB после установки Windows

32 коментарі

  1. Judest :

    Спасибо, все получилось!

    1. Master :

      Рад, что помог.

  2. Юрий :

    Grub customiser насколько я помню, намного проще….

    1. Master :

      Да, есть и GRUB Customiser и Boot Repair (кажется так), но их устанавливать необходимо отдельно, а выполняют они те же действия. Кому удобнее GUI – может пользоваться ими, я тоже так делал, но оказалось, что и через терминал все довольно легко. Тем более так сам можешь видеть что делаешь и лучше начинаешь понимать систему. Это, мне кажется, самое главное (после работающей системы).

  3. Alex :

    На Debian не работает. Есть для Jessie похожее консольное решение? Ибо ставить GUI как-то муторно. Ну не то чтобы, но из консоли побыстрее будет.

    1. Master :

      Не сталкивался с проблемами установки GRUB в Debian. На сколько я знаю, можно попробовать переустановить загрузчик с помощью Advanced options с Debian LiveCD, или способом, похожим на описанный в данной статье при помощи chroot. Эта процедура хорошо описана в Debian Wiki.

      1. Alex :

        Подсмотрел на лоре. Спецом сейчас попробовал, работает. Если кому понадобится, делал в таком порядке:
        [code]sudo apt-get update
        sudo apt-get install grub-pc[/code]
        # / у меня на пятом разделе
        [code]sudo mount /dev/sda5 /mnt
        sudo mount –bind /dev /mnt/dev
        sudo mount –bind /proc /mnt/proc
        sudo mount –bind /sys /mnt/sys
        sudo chroot /mnt
        sudo grub-install /dev/sda
        sudo update-grub[/code]

        1. Alex :

          Почему-то сайт прописал перед bind сплошной дефис. Там должны быть две маленькие чёрточки.
          [code]sudo mount –bind /dev /mnt/dev
          sudo mount –bind /proc /mnt/proc
          sudo mount –bind /sys /mnt/sys[/code]
          Сейчас ещё раз попробую. Если не пройдёт, админ, поправь.

  4. Виктор :

    Спасибо! Восстановил свой пропавший Linux Mint
    после установки Windows.

  5. Fargus :

    Добрий день, а з чого видно, що завантажувальний розділ саме sda5?
    На скільки я зрозумів, завантажувальний розділ в консольному режиму позначається зірочкою? В такому випадку у Вас завантажувальним є sda1 …

    1. Макс :

      Зирочкой отмечен активный раздел (с Windows), а /dev/sda5 это системный (корневой раздел) / Линукса и именно там находятся файлы ядра и загрузочные файлы в разделе /boot. А загрузочная запись ставится в /dev/sda т. е. в самое начало диска.
      Как то так, насколько я розумею ))))

  6. Андрей :

    Здравствуйте. А можно это дело проделать без загрузочного диска? Чисто из-под Windows? Про EasyBCD знаю.

  7. shen :

    Коротко и ясно. Благодарю!

  8. Andrey :

    добрый день, загрузил с LiveCD Ubuntu в терминале вожу
    sudo fdisk -l
    но команда не отображает раздел где стоял раньше Ubuntu.
    Присутствует Расширенный раздел sda3, который раньше включал в себя 3 раздела: 1)корень /, 2)swap, 3) home. Команда после ввода команды раздел 1)корнь / – просто не отображается, подскажите пожалуйста как быть в таком случае?

  9. Андрей :

    После данной операции, вообще ни одна ОС не грузиться. Что это может быть?

    1. Александр :

      Всем привет. Моя “история” такова.
      Установил рядом windows 10 linux KDE plasma 5. B grub’e была строка выбора windows, но…не кликабельная, windows НЕ грузился из grub’a!
      1. Загрузил с флешки windows 2К10, и с помощью BOOTICE восстановил загрузку 10-ки, но убил grub2.
      2. Загрузил с флешки kde plasma, через консоль поставил boot-repair, и через консоль же её запустил. В конце процесса boot-repair выдала пространный отчёт на вражеском языке, начинавшийся с фразы, переведённой как “во время восстановления произошла ошибка…бла-бла-бла-бла”.
      3. Перезагрузился и…о чудо! Увидел grab, и с него сразу зашёл в 10-ку. После повторной перезагрузки легко зашел в KDE plasma.
      За статью спасибо. Положил в коллекцию на всякий случай.

  10. Anna :

    Спасибо большое за статью! Наконец-то снова могу пользоваться Linux!)
    Нигде больше не нашла такой понятной инструкции, как решить проблему.

  11. ВЛАДИМИР :

    Всё правильно да вот одна проблема которую автор не упомянул LIVE DVD или USB должен быть такой же разрядности как linux который ты пытаешься восстановить, иначе полетит всё к чёртовой бабушке))

  12. Анатолий :

    Это работает но только когда у вас одна винда… Востановить груб проще пареной репы если она не начнёт писать свои загрузчики и н в МБР а хрен знает куда. Я так и не выяснил куда…

  13. Андрей :

    Спасибо Вам!

  14. Katayo :

    у меня вопрос,откуда у меня может быть grub,если никакой из linux’ов я не ставил?

  15. Алексей :

    Отлично!
    Теперь всё четко – Кали, семерка и старенькая хрюша.
    Всё на своих местах в менюхе.

  16. Михаил :

    Офигеть. Статья написана в пятнадцатом году, а всё работает и сейчас, и сразу после перезагрузки customizer в том виде, что я ему нарисовал… Спасибо.

  17. Кирилл :

    Класс, огромное спасибо! Всё так просто, сэкономили кучу времени!

  18. Roman :

    Спасибо, дорогой товарищ! Кратко, доступно и по делу!

  19. Александр :

    Всем привет. Может кому-то пригодится. Моя «история» такова.
    Установил рядом windows 10 linux KDE plasma 5. B grub’e была строка выбора windows, но…не кликабельная, windows НЕ грузился из grub’a!
    1. Загрузил с флешки windows 2К10, и с помощью BOOTICE восстановил загрузку 10-ки, но убил grub2.
    2. Загрузил с флешки kde plasma, через консоль поставил boot-repair, и через консоль же её запустил. В конце процесса boot-repair выдала пространный отчёт на вражеском языке, начинавшийся с фразы, переведённой как «во время восстановления произошла ошибка…бла-бла-бла-бла».
    3. Перезагрузился и…о чудо! Увидел grab, и с него сразу зашёл в 10-ку. После повторной перезагрузки легко зашел в KDE plasma.
    За статью спасибо. Положил в коллекцию на всякий случай.

  20. Nik :

    Спасибо автору, всё заработало. Я уж было напугался что надо будет слишком долго возиться… к тому же винда ещё со своими капризами нервы надорвала. Но процесс реанимации прошёл без проблем, обе системы теперь живы и здоровы. Так что не могу не поблагодарить.

  21. Макс :

    У меня на основном разделе стоит семёрка, а на расширенном три раздела с линуксами, раздел подкачки, и раздел /boot общий для трёх Линуксов. С live CD нужно примонтировать раздел с линуксом или раздел /boot ?

  22. Торнике :

    Спасибо. У вас получилось помочь мне. Вы молодец! 🙂

  23. Евгений :

    Спасибо. Процедура успешно опробована на (Win10) –(Ubuntu 16.04 LTS).

  24. Александр :

    Спасибо, сработало. Только после установки GRUB семёрка теряет сидюк. Пропадает начисто из системы.

  25. Везунчик :

    Отлично! Спасибо. Теперь у меня вообще не грузится ни линь, ни винда, и сразу открывается биос. Эх, буду обе системы переустанавливать (

Залишити коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *