Cela me déprime vraiment. J'ai Gentoo et Ubuntu, tous deux avec Grub2. Gentoo a une /boot
partition dédiée , contrairement à Ubuntu. J'ai un menuentry
dans Gentoo /etc/grub.d/40_custom
pour démarrer Ubuntu (et Ubuntu démarre bien).
Parce qu'Ubuntu est livré avec Grub, je veux charger en chaîne dans celui-ci, au lieu de maintenir mon entrée qui définit la racine, le noyau, initrd et d'autres choses. Voici ce que j'ai pour le chargeur de chaîne (Ubuntu est activé /dev/sda4
et j'y ai déjà installé Grub):
menuentry 'Chainloader' {
insmod chain
set root=(hd0,4)
chainloader +1
}
Ça me donne error: Invalid signature
et je n'ai trouvé aucune solution disponible. Quelqu'un peut-il signaler quelque chose?
Ceci est le résultat de </dev/sda4 head -c 512 | hd
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000200
C'est le résultat de fdisk -l
. /dev/sda1
est /boot
de Gentoo, Gentoo est /dev/sda2
, Ubuntu est /dev/sda4
. Ubuntu /boot
est /dev/sda4
également présent.
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xe001152b
Device Boot Start End Blocks Id System
/dev/sda1 1 9 72261 83 Linux
/dev/sda2 10 13064 104864287+ 8e Linux LVM
/dev/sda4 * 18152 19457 10490445 83 Linux
Il n'y a pas d'erreur avec grub-install /dev/sda4 --no-floppy --force
/usr/sbin/grub-setup: warn: Attempting to install GRUB to a partition instead of the MBR. This is a BAD idea..
/usr/sbin/grub-setup: warn: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
Installation finished. No error reported.
/dev/sda4
. Avez-vous plus d'un disque? Quelle est votre table de partition? Veuillez publier la sortie defdisk -l
et les messages degrub-install /dev/sda4 --no-floppy --force
.Réponses:
Vous pouvez charger GRUB2 à partir de GRUB2, je l'ai juste essayé comme vous l'avez décrit et cela fonctionne. Cependant, les informations que vous avez fournies donnent l'impression que l'image de démarrage n'a pas été intégrée dans le MBR du disque (ou ce ne serait pas tous des zéros).
J'essaierais cela, bien qu'il n'utilise pas exactement le GRUB2 d'Ubuntu (juste son fichier de configuration). Vous pouvez créer une entrée de menu dans le fichier de configuration Gentoo GRUB2 qui charge le fichier de configuration Ubuntu. Il y a deux façons de voir cela.
Celui que j'utiliserais est avec la commande normale , qui vous permet de spécifier un fichier de configuration à charger pour le mode normal. Si vous suivez cette route, il existe une commande appelée normal_exit que vous pouvez ajouter en tant qu'élément personnalisé dans votre configuration Ubuntu qui vous permettrait de revenir à votre configuration Gentoo.
L'autre option est la commande configfile , qui vous permet de spécifier un autre fichier de configuration à charger. Il semble cependant qu'il serait plus difficile de "se retirer" de cette option.
Vous trouverez plus d'informations sur ces commandes ici .
la source
La première partie du processus de démarrage consiste à charger du code à partir du premier secteur du disque dur, le soi-disant Master Boot Record (MBR) . Normalement, Grub est écrit dans ce premier secteur de disque dur et non dans le premier secteur de la partition contenant / boot. Cependant, vous pouvez normalement changer cela pendant l'installation de Linux, mais dans les routines d'installation modernes, cela est souvent masqué.
Vous dites que Grub est installé dans / dev / sda4, mais votre configuration semble correcte et le message d'erreur que vous avez publié suggère que Grub n'est peut-être pas installé correctement dans la partition que vous souhaitez charger en chaîne. Vous devez démarrer dans Gentoo, puis chroot dans la partition Ubuntu. Assurez-vous que / boot pointe maintenant correctement vers Ubuntu- / boot et non vers Gentoo! Maintenant , installez Grub 2 dans le premier secteur de la Ubuntu-Partition / dev / sda4:
grub-install /dev/sda4 --no-floppy
.Comme toujours lorsque vous manipulez le MBR et les partitions, assurez-vous de disposer d'une sauvegarde fonctionnelle et à jour avant de commencer.
la source
/dev/sda4
(les deux derniers octets doivent être0x55 0xaa
). Pourriez-vous publier la sortie de</dev/sda4 head -c 512 | hd
?grub-install /dev/sda4 --no-floppy --force
, sinon il y aura des plaintes concernant les listes de blocageEst-ce que sda4 ne sera pas (hd0,3) dans grub, ou ce genre de chose a-t-il changé dans grub2?
la source