Двойная загрузка Gentoo и ArchLinux с использованием grub

591
StefanK2

Я пытаюсь поэкспериментировать с Gentoo, поэтому я изменил размер моего раздела ArchLinux, чтобы освободить место.

Я установил Gentoo на следующую схему разделов:

Model: ATA ST3500411SV (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags:  Number Start End Size File system Name Flags 1 1049kB 3146kB 2097kB BIOS boot partition bios_grub 2 3146kB 16.1GB 16.1GB linux-swap(v1) Linux swap 3 16.1GB 453GB 437GB btrfs Linux filesystem 4 453GB 453GB 134MB ext2 gentoo-boot 5 453GB 500GB 47.3GB ext4 gentoo-root 

Загрузочный раздел BIOS (# 1) был заполнен grub от ArchLinux.

Для установки Gentoo я следовал инструкциям в официальном руководстве, но пропустил часть о настройке загрузчика, думая, что установка grub из ArchLinux должна справиться с загрузкой Gentoo и Arch.

Может быть, это моя ошибка.

Я добавил следующее в grub-config в Arch-Linux:

Обновленная версия:

menuentry "Gentoo" { insmod ext2 set root=(hd0,gpt5) linux /boot/kernel-genkernel-x86_64-4.12.12-gentoo initrd /boot/initramfs-genkernel-x86_64-4.12.12-gentoo } 

Это не оригинальная версия, которую я добавил, я изменил несколько настроек, пытаясь сузить проблему.

Когда я загружаюсь, запись Gentoo появляется в списке grub, но когда я пытаюсь ее использовать, я получаю сообщение об ошибке, что файл для ядра не может быть найден.

Моя основная проблема - понять, как мне сказать grub, что корень Gentoo находится в gpt5, а папка / boot - в gpt4.

Я также пытался использовать os-prober, чтобы автоматически генерировать запись, но я получаю тот же результат, файл ядра не может быть найден. Конфигурация grub использует gpt5 в качестве пользователя root, и gpt4 не упоминается в папке / boot.

У кого-нибудь есть опыт решения подобных проблем?

0
Просто проверяю: что 'gtp4' во второй последней строке на самом деле gpt4? Я так полагаю, потому что enuentry ;-) mcalex 6 лет назад 1
Является ли запись для Arch такой же, как запись, созданная для Gentoo, но с другими файлами и корнем? Nattgew 6 лет назад 0
@mcalex О, очень хорошая мысль. Да, это было определенно неправильно. Я проверю позже, если это исправлено. StefanK2 6 лет назад 0
@mcalex К сожалению, это не помогло. Проблема все еще существует, но спасибо, что нашли это, это было действительно сложно :) StefanK2 6 лет назад 0
@Nattgew Я не копировал настройки из ArchLinux, я строю запись из материала из документации grub. StefanK2 6 лет назад 0

1 ответ на вопрос

0
Johan Myréen

bootи rootнаходятся на отдельных участках. на данный момент bootне смонтирован в /bootкаталоге 5-го раздела. Вы должны изменить настройки root set root=(hd0,gpt4)и удалить /bootчасть в путях к образам ядра и initramfs:

set root=(hd0,gpt4) linux /kernel-genkernel-x86_64-4.12.12-gentoo initrd /initramfs-genkernel-x86_64-4.12.12-gentoo