Upgrade da Lilo a Grub

From RVM Wiki
Jump to navigation Jump to search


Il presente articolo preso da http://myrddin.org/howto/debian-grub.php, illustra come sostituire Lilo con Grub. Il tutto è stato testato con Debian Sarge.

Installazione di Grub

 apt-get install grub grub-doc

Creazione di un floppy di boot

Creare un dischetto di boot per testare GRUB:

Formattare e montare il floppy:

fdformat /dev/fd0
mkfs /dev/fd0
mount /floppy/

Creare la cartella per i files di grub e copiarli, smontare il floppy:

mkdir -p /floppy/boot/grub
cp /boot/grub/stage1 /boot/grub/stage2 /boot/grub/menu.lst /floppy/boot/grub/
umount /floppy/

Installare Grub sul floppy:

/sbin/grub --batch --device-map=/dev/null <<EOFile
device (fd0) /dev/fd0
root (fd0)
setup (fd0)
quit
EOFile

Testare il floppy per vedere se il sistema parte correttamente da Floppy.

In caso positivo proseguire.


Scrittura mbr

Una volta installato il pacchetto, occore installare il boot manager dove voluto.

Se si ha un solo OS ed un solo disco IDE:

grub-install /dev/hda

Se invece si hanno più os sul disco, e non si vuole che Grub sia il boot manager di default (perchè ad esempio di preferisce Gag è necessario specificare la partizione dove installarlo:

grub-install /dev/hda2

IMPORTANTE Se si utilizza un Raid software, è necessario scrivere l'mbr su tutti i dischi:

grub-install /dev/hda
grub-install /dev/hdc
grub-install /dev/md0

C'è però chi sostiene che sia meglio fare come indicato in Installazione di Grub con RAID Software

Creazione del menu di avvio

Occorre generare il file /boot/grub/menu.lst con il comando

update-grub


Rimozione di lilo

Rimuovere Lilo lasciando il file di configurazione:

apt-get remove lilo


Rimozione della configurazione di lilo

 dpkg --purge lilo


Automatizzare l'esecuzione di update-grub all'installazione/rimozione di un kernel

modificare le seguenti opzioni in /etc/kernel-img.conf:

postinst_hook = /sbin/update-grub
postrm_hook = /sbin/update-grub
do_bootloader = no
do_initrd = Yes


Riferimenti a kernel obsoleti

E' probabile che grub continui a elencare dei riferimenti a kernel obsoleti ed addirittura disinstallati. Si può ovviare a tutto ciò rimuovendo i pacchetti kernle-image-* e rimuovendo i rispettivi files /boot/vmlinuz-* e /boot/initrd.img-* e poi rilanciando update-grub.