Grub, il boot loader standard di molte distribuzioni Linux permette abbastanza agevolmente di avviare dalla stessa postazione più sistemi operativi, anche Microsoft Windows Xp o 2003 SERVER per esempio.
Installazione.
Io generalmente preferisco installare linux in un disco diverso da quello di Windows ed il grub lo metto sempre nel master boot record della mia partizione d’avvio anziché nell’mbr del disco. Questo permette ai sistemi operativi di essere indipendenti e di essere al riparo da sovrascrittura accidentali del mbr.
Sintassi.
Il file di configurazione è /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sdb6
# initrd /initrd-version.img
#boot=/dev/sdb1
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.25-14.fc9.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.25-14.fc9.x86_64 ro root=UUID=54253e0a-961f-4599-bb1e-e668d07bd795 rhgb quiet
initrd /initrd-2.6.25-14.fc9.x86_64.img
title Windows XP
rootnoverify (hd1,0)
chainloader +1
In questo caso ho Windows XP sul secondo disco, rispetto a Fedora che sta sul primo. Da notare che grub legge i dischi partendo dal disco “0″ (zero), e mantiene lo stesso ordine del bios. Nel mio caso per esempio il disco /dev/sdb per grub era lo “0″ mentre il /dev/sda era “1″. Analogo discorso per le partizioni: che partono da “0″. Quindi con (hd1,0) sto indicando la prima partizione del secondo disco. In una situazione come questa Windows stenta a partire e selezionando al menu di Grub vedrete solo
title Windows XP
rootnoverify (hd1,0)
chainloader +1
e quindi vi rimarrà lì.
Il problema è legato al fatto che l’HD con Windows Xp è il secondo e non ho messo il grub nel mbr dello stesso disco di windows.
Inoltre Xp non parte se non è installato sul primo disco per cui utilizzare la funzione map che permette di simulare una mappatura come primo disco.
Questa parte di grub.conf
title Windows XP
rootnoverify (hd1,0)
chainloader +1
la sostituisco con:
title Windows XP
rootnoverify (hd1,0)
makeactive
map (hd0) (hd1)
map (hd1) (hd0)
chainloader +1
boot
makeactive e boot sono solo un vezzo, in realtà è necessario mettere per bene la funzione map.
Per completezza aggiungo il mio fdisk -l
Disk /dev/sda: 200.0 GB, 200049647616 bytes
255 heads, 63 sectors/track, 24321 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xd9553cd3Device Boot Start End Blocks Id System
/dev/sda1 * 1 24321 195358401 42 SFSDisk /dev/sdb: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xcb986ae8Device Boot Start End Blocks Id System
/dev/sdb1 * 1 25 200781 83 Linux
/dev/sdb2 26 286 2096482+ 82 Linux swap / Solaris
/dev/sdb3 287 547 2096482+ 83 Linux
/dev/sdb4 548 9729 73754415 5 Extended
/dev/sdb5 548 808 2096451 83 Linux
/dev/sdb6 809 2083 10241406 83 Linux
Risorse on-line.
Tread di riferimento su fedoraonline.it
Cambiare l’immagine di Grub (da fedoraonline.it)
Compatibilità
Lo script è compatibile con Linux in genere e Red Hat Linux Fedora in particolare.
Risorse
da console: man grub
Licenza
Attribuzione-Condividi allo stesso modo 2.5 Generico: le informazioni contenute in esso possono essere utilizzate e modificate liberamente. E’ obbligatorio invese mantenere la paternità a “Luca Raciti http:\\lucaraciti.wordpress.it” e di condividere allo stesso modo.
Disclaimer
Il weblog non ha carattere di perodico. Fatti salvi errori ed omissioni, non si assume responsabilità per eventuali problematiche derivanti dall’utilizzo delle informazioni contenute nell’articolo.