Как настроить цепочку загрузчиков GRUB2 для других Grub (Fedora, Debian) на GPT

Как настроить цепочку загрузчиков GRUB2 для других Grub (Fedora, Debian) на GPT

Я пытаюсь настроить выделенный GRUB2, который (по цепочке) загружает другой GRUB на диск с таблицей разделов GPT.

Соответствующие разделы:

  • /dev/sda1 BIOS_BOOT
  • /dev/sda2 ЗАГРУЗКА (ext2)
  • /dev/sda3 FEDORA (ext4)
  • /dev/sda6 DEBIAN (ext4)

Сначала я установил Fedora, используя /dev/sda2 в качестве загрузочного раздела. Затем я установил Debian. Установщик Debian распознал установку Fedora и добавил ее в качестве загрузочной записи, затем установил ее GRUB в MBR. Хотя это работает на данный момент, это довольно грязно, потому что каждое обновление Debian может изменить конфигурацию загрузки, удалив запись Fedora (пробовал) и наоборот. Вот почему я хочу, чтобы у обеих систем был свой собственный загрузчик и один основной загрузчик (который может находиться на /dev/sda2), который загружает одну из них.

Вот что я попробовал:

  • Переместил все из /dev/sda2 в /dev/sda3/boot
  • Удалена точка монтирования /boot в Fedora (поэтому /dev/sda2 больше не используется)
  • Из работающего Linux установил GRUB2 в MBR (grub-install --boot-directory=sda2 /dev/sda)
  • Написал menu.lst:
    • название Fedora
    • корень (hd0,2)
    • цепной погрузчик +1
    • (Опять же, для Debian)
  • Преобразовал это в скрипт grub.cfg (grub-menu2cfg или что-то вроде того)
  • При загрузке появилось меню GRUB2 с "Fedora" (и "Debian")
  • При выборе любого из них:
    • ошибка: недействительная подпись
  • Выполнен "grub-install /dev/sda6" (и ...sda3) из всех видов работающих систем Linux, все они завершились неудачей с другим сообщением об ошибке (в случае установщика Debian вообще без объяснения причин)
  • Добавлен --force в строку chainloader, теперь там написано "loading", а затем перезагрузка
  • Нашел десятки инструкций, но ни одна из них мне не подходит.

Редактировать:
Забыл об этом (довольно обширном) вопросе.

AFAIR Я нашел и скопировал некоторые файлы из другой установки Fedora, чтобы заставить загрузчик работать. Кроме того, я создал символическую ссылку на текущий образ Linux и поместил ее в первую/основную конфигурацию GRUB, так что он всегда будет загружать это конкретное ядро.

Я не думаю, что этот вопрос представляет какую-либо ценность для человека с похожей проблемой, поэтому его, вероятно, можно удалить.

решение1

У меня похожая проблема с внешним SSD. Загрузка возможна только с внутреннего диска. Система не загружается, если внешний диск не подключен.

Я только что нашел bootinfoscript и получил забавный вывод (не имеющий отношения к публикации здесь), но, по крайней мере, он дает понять, что мои мысли и мысли grub2 совершенно разные.

Возможно, этот инструмент вам поможет.

http://sourceforge.net/projects/bootinfoscript/

Связанный контент