Есть многим знакомая статья по восстановлению grub2
https://help.ubuntu.ru/wiki/%D0%B2%D0%BE%D1%81%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_grubТам есть Быстрый Способ восстановления,
В случае, если нужно только восстановить MBR диска (например, после (пере)установки Windows). Все можно сделать очень просто, монтировать вообще ничего не нужно.
Запустите систему с LiveCD и откройте терминал. Для этого можно нажать Alt+F2 и ввести команду:
gnome-terminal
Далее необходимо узнать Вашу таблицу разделов. Используйте команду:
sudo fdisk -l
На экран должна быть выведена примерно такая таблица:
/dev/sda1 29 8369 66999082+ 83 Linux
/dev/sda2 * 8370 13995 45190845 7 HPFS/NTFS
/dev/sda3 13996 14593 4803435 5 Extended
Затем вводите следующую команду, заменив Linux раздел (здесь это /dev/sda1) на нужный:
sudo grub-install --root-directory=/tmp /dev/sda1
На этом восстановление закончено!
У многих возникают проблемы при использовании данного способа, что неудивительно, тк способ не рабочий.
Инструкция заканчиваются следующей строчкой:
sudo grub-install --root-directory=/tmp /dev/sda1
Получается автор собирается установить grub в раздел sda1, хотя по-умолчанию grub всегда ставится в MBR. Если бы grub все же был установлен в раздел, то восстановление заключалось бы в изменени boot-флага на разделе и все.
Может быть автор хотел написать /dev/sda и просто ошибся, но тогда зачем все эти дополнительные команды по выяснению где расположен раздел с системой...
Так что логически для восстановления достаточно команды:
sudo grub-install --root-directory=/tmp /dev/sda
но на самом деле эта команда тоже не работает. Все попытки подсунуть скрипту grub-install файловую систему не на реальном диске закончатся ошибкой. В любом случае, даже если не использовать скрипты, а запускать напрямую grub-setup, он также будет выдавать ошибку, даже при --skip-fs-probe.
Может я где-то ошибаюсь и меня поправят? Или кто-нибудь подскажет способ без монтирования диска?
А может пора убрать этот способ?