Grub fonctionne en chargeant en premier lieu un fichier de 512 octets, “stage1”, qui a sont tour lance le “stage2”, beaucoup plus gros, grâce à l'aide de l'un des stage 1.5 (fonction du FileSystem). C'est le stage2 qui va directement lancer les noyaux des OS (MultiBoot, UNICES et BSD) ou un donner la main au bootloader suivant (Windows, par exemple).
Pour debugger une install de grub, il peut-être salutaire de préparer une "disquette de démarrage" (une clé usb fait très bien l'affaire). Pour cela:
# cd to grub files location # dd if=stage1 of=/dev/fd0 bs=512 count=1 1+0 records in 1+0 records out # dd if=stage2 of=/dev/fd0 bs=512 seek=1 153+1 records in 153+1 records out #