Sometime happens!
E si può in effetti capitare di dover installare l’odiato Windows su un pc con a bordo Linux
Si sente spesso parlare del caso contrario ma per lavoro mi è successo di dover installare WinXP sul mio laptop con sù Ubuntu Jaunty.

Grub

Grub

Il problema?? Se installiamo WinXP su una partizione del nostro PC, l’intelligentissimo installer di casa Redmond non fa il detect dei sistemi operativi, sovrascrive l’MBR e al reboot (dopo 1 ora  e 1/2 di installazione) ci ritroveremo senza la possibilità di avviare la nostra distro Linux preferita (Ubuntu ?!?!)

Avevo già scritto in proposito una guida

http://www.scubarda.net/wordpress/2007/04/26/recupero-boot-loader-grub/

quello che segue è un altro metodo funzionante (testato 2 gg fa)

Una volta avviato il livecd Ubuntu (la cosa funziona con qualsiasi altro livecd, a meno di usare l’utenza root al posto del comando sudo), bisogna come prima cosa montare la propria root partition (nel mio caso sda1, sostituire con la propria unità) sulla directory  /mnt/root (o una qualsiasi da creare a piacimento)

sudo mkdir /mnt/root
sudo mount -t ext3 /dex/sda1 /mnt/root

Di seguito è necessario montare gli pseudo filesystem proc e dev all’interno del mount point appena creato

sudo mount -t proc /mnt/root/proc
sudo mount -o bind /dev /mnt/root/dev

e fare dunque il chroot

sudo chroot /mnt/root /bin/bash

Ora che ci siamo chrootati nel nostro root file system è necessario eseguire i seguenti comandi grub per ripristinare l’MBR

sudo grub

nella console grub> dare i seguenti comandi

find /boot/grub/stage1

dovrebbe ritornare qualcosa del genere (hd0,0) ovvero l’equivalente in grubiano del device sda1 (la root partition)

root (hd0,0)

la scansione deve riconoscere il fs e la partizione

setup (hd0)

Quest’ultimo comando sovrascrive e ripristina l’MBR (nota che il setup è fatto su hd0, ovvero nel mio caso il disco sda)

Nel caso si voglia predisporre il dual boot con Win basta semplicemente aggiungere l’entry relativa a Windows nel file /boot/grub/menu.lst. Sostituire la label (hd0,1) con quella corrispondente alla partizione su cui si è installato Windows.
(hd0,1) corrisponde a sda2.

Comando in chroot: sudo vi /boot/grub/menu.lst

title Windows
root (hd0,1)
makeactive
chainloader +1

A questo punto si può riavviare e avremo come boot loader il classico Grub con l’entry per Windows (premere ESC per vedere le opzioni di boot)

Chiaramente la procedura vale anche se avete cancellato/modificato l’MBR per qualche altro motivo.

Enjoy!

Lascia un commento

(richiesto)

(richiesto)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© 2010 Scubarda.net Suffusion WordPress theme by Sayontan Sinha