Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Questa guida contiene quattro diverse soluzioni per ripristinare GRUB a causa di:
- Sistemi in dual-boot in cui Windows è stato installato dopo Ubuntu.
- Problemi di Windows che hanno obbligato a una sua reinstallazione.
- Tecniche di recupero di Windows che comportino il "ripristino" del MBR.
Errori nell'installazione di GRUB.
Il primo e il terzo metodo qui descritti richiedono l'utilizzo del Live CD o di una usb Live.
Primo metodo: sessione live
Il primo metodo è una procedura molto semplice e prevede l'utilizzo del terminale. Questa procedura dovrebbe funzionare a patto che la struttura delle partizioni del disco contenente GRUB non sia stata modificata tramite programmi come gparted, Norton Partition Magic: in tal caso è necessario controllare il file /etc/fstab.
Avviare la sessione Live di Ubuntu.
Digitare il seguente comando in una finestra di terminale:
sudo grub
Determinare la partizione di boot in cui è stato installato Ubuntu digitando:
find /boot/grub/stage1
Verrà data una risposta del tipo hdX o (hdX,Y), dove X e Y indicano rispettivamente il disco e la partizione su cui è installato GRUB. Per esempio, se GRUB è installato nella partizione /dev/sda3, il comando precedente darà come risposta (hd0,2). Nei seguenti comandi verrà usato come esempio (hd0,2): adattare quindi i comandi alla risposta ricevuta dal comando precedente.
Digitare:
root (hd0,2)
per indicare a GRUB la partizione da cui leggere il file menu.lst.
Questo è il passaggio chiave. Digitare:
setup (hd0)
per installare GRUB nel MBR del primo disco fisso (di solito il disco che parte al boot).
Infine digitare:
quit
- Riavviare il sistema e rimuovere il CD Live.
Secondo metodo: sessione standard
Questo metodo va eseguito da sistema operativo già in esecuzione. Si può usare, ad esempio, se si è eseguita un'operazione che ha disinstallato o corrotto GRUB, o dopo aver effettuato l'accesso con il CD Live di Super Grub Disk.
In un terminale digitare:
sudo fdisk -l
per scoprire il disco su cui è installato GRUB. Un esempio di output potrebbe essere il seguente:
Dispositivo Boot Start End Blocks Id System /dev/sda1 * 63 153597464 76798701 7 HPFS/NTFS /dev/sda2 153597465 419842709 133122622+ 7 HPFS/NTFS /dev/sda3 419842710 487219319 33688305 83 Linux /dev/sda4 487219320 488392064 586372+ 5 Esteso /dev/sda5 487219383 488392064 586341 82 Linux swap / Solaris
Per installare GRUB digitare:
sudo grub-install /dev/sda
Se il comando precedente non dovesse andare a buon fine, digitare:
sudo grub-install (hd0)
Infine, per aggiornare il menù di GRUB, digitare:
sudo update-grub
In questo modo viene installato GRUB sul disco posto sul canale primario master.
Se la procedura appena utilizzata non dovesse funzionare, seguire il primo metodo.
Terzo metodo: procedura sicura
È il metodo più laborioso, ma nel caso il pacchetto GRUB non sia installato o sia necessario reinstallarlo a causa di qualche file danneggiato, se eseguito correttamente, dà la certezza di successo. Procedere come segue:
Avviare la sessione Live di Ubuntu.
Una volta avviato il sistema, aprire un terminale. È ora necessario diventare l'utente root, quindi digitare:
sudo -s
Individuare la partizione in cui è installato Ubuntu con uno dei seguenti comandi, come descritti nei metodi precedenti:
find /boot/grub/stage1
oppure
sudo fdisk -l
Creare i punti di mount necessari:
mkdir /mnt/work
Eseguire i seguenti comandi per caricare il file system e alcune informazioni che possono servire a GRUB. In questo esempio viene usato sda4:
mount /dev/sda4 /mnt/work mount -o bind /dev /mnt/work/dev mount -o bind /proc /mnt/work/proc cp /proc/mounts /mnt/work/etc/mtab
Digitare quindi:
chroot /mnt/work/ /bin/bash grep -v rootfs /proc/mounts > /etc/mtab
Da questo punto in poi si sta lavorando direttamente sulla versione installata di Ubuntu, muoversi con cautela. Seguire quindi una delle due strade indicate di seguito: il ripristino automatico o il ripristino manuale.
All'interno dell'ambiente chroot è possibile effettuare qualsiasi operazione da riga di comando, come aggiornare il sistema o installare/rimuovere applicazioni e kernel con gli strumenti come apt, dpkg, ecc... |
Ripristinare GRUB automaticamente
Se si ha una partizione /boot separata, è possibile visualizzare quale sia il device con punto di mount /boot.
Dal terminale digitare:
cat /etc/fstab
per vedere il device che viene montato come /boot.
Ipotizzando che il device sia /dev/sda3, digitare il seguente comando:
mount /dev/sda3
A questo punto, installare, reinstallare o ripristinare GRUB è facile. È comunque consigliato reinstallare GRUB. Dal terminale, digitare:
sudo apt-get install --reinstall grub
Per completare l'installazione sul MBR, digitare:
grub-install /dev/sda update-grub
oppure
grub-install (hd0) update-grub
Se la procedura appena utilizzata non dovesse funzionare, è necessario ripristinare GRUB manualmente.
Ripristinare GRUB manualmente
Eseguire i passi del primo metodo all'interno dell'ambiente chroot.
Al termine, digitare:
exit
per uscire dall'ambiente chroot e riavviare il computer.
Quarto metodo: ripristino tramite Super Grub Disk
Se non si ha la possibilità di avviare il sistema desiderato dal menù di GRUB, è possibile effettuare l'accesso tramite Super Grub Disk e quindi procedere con il ripristino di GRUB tramite la procedura descritta nel secondo metodo.
Per l'utilizzo di Super Grub Disk consultare la seguente pagina.