Каков рекомендуемый способ загрузки отдельных разделов Ubuntu / boot?

Я хочу, чтобы два разных дистрибутива Ubuntu загружались на одном жестком диске. Я установил первый, с внешним / загрузочным разделом (например, /dev/sda2).

Затем я установил второй дистрибутив с отдельным разделом / boot (например, /dev/sda5).

Я подумал, что после установки второго Ubuntu, update-grub автоматически добавит записи для первого Ubuntu путем цепной загрузки / dev / sda2 из / dev / sda5. Этого не случилось.

Теперь, мне интересно, каков рекомендуемый способ загрузки по цепочке / dev / sda2 из / dev / sda5. Я полагаю, что рекомендуемый метод будет включать использование существующих сценариев в /etc/grub.d, потому что /boot/grub/grub.cfg будет заменен, если я изменю его вручную.

0
задан 17 July 2013 в 00:55

2 ответа

Прежде всего, нужный мне эффект (соединение меню grub из одного дистрибутива с другим) не требует загрузки по цепочке ; достаточно просто перегрузить конфигурацию grub с помощью команды configfile Grub 2 в файле /etc/grub.d/40_custom, например:

menuentry "Ubuntu Precise 64 bit" {
   configfile (hd0,gpt2)/grub/grub.cfg   
}

где (hd0,gpt2) - адрес раздела / boot раздела другой Linux (в данном примере это 2-й раздел на GPT-диске sda).

После редактирования важно запустить sudo update-grub, поэтому изменения распространяются в /boot/grub/grub.cfg

Таким образом, можно сохранить элегантный и безошибочный способ поддержки двух отдельных установок Linux. (который может, например, использовать один и тот же корневой раздел btrfs, но в разных подобъемах)

0
ответ дан 17 July 2013 в 00:55

В системе bios я предпочитаю загружать по цепочке с помощью опции мультизагрузки:

menuentry "Ubuntu, Trusty (on lvm/nantes-trusty)" --class gnu-linux --class gnu --class os {
insmod part_gpt
insmod lvm
insmod ext2
set root='lvm/nantes-trusty'
multiboot /boot/grub/i386-pc/core.img
}

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

Потому что у меня была версия grub, которая загружала старый файл grub.cfg. Этого здесь не происходит, потому что когда вы загружаете core.img, вы загружаете grub, который идет вместе с его собственным файлом grub.cfg.

На самом деле это похоже на то, что делает uefi при загрузке grub, потому что вы даете ему что-то вроде core.efi вместо core.img

0
ответ дан 17 July 2013 в 00:55

Другие вопросы по тегам:

Похожие вопросы: