Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Immutable Page
  • Info
  • Attachments


Introduzione

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

    Per sistemi installati su file system ext4 è necessario avviare un Live Cd di Ubuntu 9.04 Jaunty Jackalope 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 indica 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 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 si 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

    Inserire la propria password e premere Invio.

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


CategoryHomepage