Magazine Informatica

Tre diverse soluzioni per ripristinare il Grub.

Creato il 10 febbraio 2012 da Linuxlandia

Questa guida contiene tre 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.

Tutti e tre i metodi qui descritti richiedono l'utilizzo del CD Live.

Primo metodo

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.

  1. Avviare il CD Live

    Tre diverse soluzioni per ripristinare il Grub.

    Per sistemi installati su file system ext4 è necessario avviare un Live Cd di Ubuntu 9.04 o superiore.

  2. Digitare il seguente comando in una finestra di terminale:

    sudo grub



  3. 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.




  4. Digitare:


    root (hd0,2)

    per indicare a GRUB la partizione da cui leggere il file menu.lst.




  5. Questo è il passaggio chiave. Digitare:


    setup (hd0)

    per installare GRUB nel MBR del primo disco fisso (di solito il disco che parte al boot).




  6. Infine digitare:


    quit


  7. Riavviare il sistema e rimuovere il CD Live.


Secondo metodo


Questo metodo viene eseguito direttamente dal sistema operativo lanciato, per esempio, con il CD Live di Supergrub o con un altro strumento.




  1. 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



  2. Per installare GRUB digitare:


    sudo grub-install /dev/sda 



  3. Se il comando precedente non dovesse andare a buon fine, digitare:


    sudo grub-install (hd0)



  4. 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


È 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:



  1. Inserire il CD Live nel lettore CD, riavviare il computer e attendere il caricamento del sistema operativo dal CD.

  2. Una volta avviato il sistema, aprire un terminale.


  3. È ora necessario diventare l'utente root. Dal terminale digitare:


    sudo -s



  4. 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 



  5. Creare i punti di mount necessari:


    mkdir /mnt/work



  6. 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



  7. Digitare quindi:


    chroot /mnt/work/ /bin/bash
    grep -v rootfs /proc/mounts > /etc/mtab



  8. 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 è inoltre 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.




  1. Dal terminare digitare:


    cat /etc/fstab

    per vedere il device che viene montato come /boot.




  2. Ipotizzando che il device sia /dev/sda3, digitare il seguente comando:


    mount /dev/sda3 



  3. A questo punto, installare, reinstallare o ripristinare GRUB è facile. È comunque consigliato reinstallare GRUB. Dal terminale, digitare:


    sudo apt-get install --reinstall grub



  4. Per completare l'installazione sul MBR, digitare:


    grub-install /dev/sda oppure
    grub-install (hd0)
    update-grub



Se la procedura appena utilizzata non dovesse funzionare, è necessario ripristinare GRUB manualmente.


Ripristinare GRUB manualmente




  1. Eseguire i passi del primo metodo all'interno dell'ambiente chroot.




  2. Al termine, digitare:


    exit

    per uscire dall'ambiente chroot e riavviare il computer.


Alternativa


È disponibile un CD Live in grado di riparare automaticamente GRUB dopo l'installazione di Windows, ed è molto facile da utilizzare. Per scaricare il CD di «Super Grub Disk», consultare: http://www.supergrubdisk.org/.


Una volta scaricato e masterizzato il CD, avviare il computer con il CD inserito e scegliere: Italian -> Linux -> Fix Linux Boot (GRUB). Al termine dell'operazione si riceverà il messaggio: SGD has done it!!!. In questo modo GRUB verrà ripristinato e sarà di nuovo possibile avviare sia Linux che Windows.


Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :