Skip to content


Ripristinare GRUB2 su Ubuntu con un Live CD dopo l’installazione di Windows

Un mese fa ho cambiato l’harddisk del mio portatile (SATA 250GB 7200rpm). Ritrovandomi senza dvd di ripristino di Windows Vista e senza partizione di ripristino, facendo l’installazione sul disco nuovo ho messo direttamente Ubuntu e basta. Per lavoro ora ho bisogno di Windows in quando il software che uso gira solo sul sistema operativo Microsoft, quindi ho partizionato il disco e ho installato Windows 7 per provarlo. Devo dire – oggettivamente – che è una scheggia, davvero veloce anche con millemila applicazioni aperte, ma questo discorso non c’entra con quello che voglio trattare in questo post.

Dopo l’installazione di Windows mi sono ritrovato senza GRUB2, il bootloader di default di Ubuntu “Karmic Koala” 9.10 e quindi non riuscivo più ad accedere al mio sistema preferito. Sulla Rete ci sono molte guide riguardo GRUB, ma pochissime trattano GRUB2. Come ripristinarlo?

ATTENZIONE! Nei passi seguenti si lavorerà come root sul nostro sistema, quindi prudenza.

Recupera un Live CD. Io ho usato quello di Ubuntu “Jaunty Jackalope” 9.04 64bit.
Una volta avviato apri un terminale. Per comodità diventa superuser, e d’ora in poi attenzione.
Devi identificare su quale partizione hai la directory /boot di Linux. Nel mio caso è /dev/sda3. Per vedere le partizioni usa

sudo fdisk -l /dev/sda

Ora monta la partizione, monta la directory /dev in modo da farla vedere al tuo sistema e accedi:

mount /dev/sda3 /mnt
mount -o bind /dev /mnt/dev
chroot /mnt

Ora aggiorna ricreo il file grub.cfg di GRUB2 e lo installo di nuovo nel MBR:

update-grub
grub-install /dev/sda

Teoricamente a questo punto avrà installato nuovamente GRUB2 dopo aver trovato i kernel installati e anche la partizione con Windows. Smonta la partizione e chiudi il terminale:

exit
umount /mnt/dev
umount /mnt
exit
exit

Ora riavvia. Potrebbe presentarsi il caso in cui la partizione con Windows non venga rilevata e che sia quindi impossibile avviarla. Per aggirare questo fastidio entriamo nel nostro sistema Ubuntu abituale, installiamo il pacchetto os-prober, usiamolo e ripetiamo le operazioni di prima. Via di terminale:

sudo apt-get install os-prober
sudo os-prober
sudo update-grub

Ora dovresti aver visto che anche la partizione con Windows è stata individuata. Riavvia il sistema e prova.

Se riscontri imprecisioni nella guida o vuoi confermare che tutto funziona lascia pure un commento.

EDIT 26.10.2009: Trovi altri metodi qui (guida trovato attraverso un poco educato commento di un utente a questo articolo).
EDIT 09.11.2009: Grazie a ste che nei commenti ha trovato l’imprecisione su grub-install, ora corretta.

Posted in HowTo, Informatica, Linux.

Tagged with , , , , , , .

This website uses IntenseDebate comments, but they are not currently loaded because either your browser doesn't support JavaScript, or they didn't load fast enough.


30 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. Diego says

    Il comando update-grub non aggiorna il grub, ricrea il file menu.lst.
    http://man.he.net/man8/update-grub
    Se non sono state fatte modifiche alle partizioni non è quindi nemmeno necessario.
    Per altro non ravvedo nessuna differenza con la procedura per grub legacy…

  2. oskarnrk says

    Per "aggiornare Grub2" intendo proprio ricreare il file menu.lst, grazie per la puntigliosa osservazione. Per quanto riguarda la questione "modifiche alla partizione" le ho fatte in quanto ho installato Windows7 riducendo la partizione che uso per /home.

  3. Oskar NRK says

    Il commento di uno è stato cancellato in quanto non si è identificato. Non facciamo i bambini, nickname o nome e cognome potete anche tirarli fuori.

  4. Matteo says

    Interessante. Ho già XP e Jaunty ma vorrei avere anche un Win7 per prove varie. Appena ho una mezza giornata ci provo

  5. Geppo says

    Ciao Oskar, grazie per la guida, ora vedrò di provarla, il mio problema è simile ma non proprio così; io ho usato finora il boot.ini di windows per la scelta del sistema operativo da lanciare nettendo i primi 512 bytes della partizione in cui era installato il bootloader di Ubuntu in un file e facentdo poi leggere il file al boot.ini di XP. Ora col Koala se uso questa procedura, non parte! i primi 512 bytes sembrano vuoti! tu hai idea di come si possa fare a usare sempre il boot.ini di XP? tu mi chiederai che mi frega di usarlo e usare invece Grub2, però conoscendo Microsoft vorrei evitare che un bel giorno, con qualche aggiornamento, zio Bill vede che il boot loader non è il suo e mi cambia tutto (cosa da non stupirsi con Microsoft)
    Grazie.
    Geppo

    • oskarnrk says

      Ciao Geppo, purtroppo non so aiutarti sulla questione boot.ini perché non l'ho mai usata

  6. ste says

    Perfetta guida, ma devi correggere il comando
    grub-install
    in
    grub-install /dev/sdYX

  7. ste says

    EDIT
    …/dev/sdaX se si installa nel MBR

  8. Pier says

    Grande Oskar, guida perfetta! Un solo problemino, ogni volta che win si aggiorna (vista 64) al riavvio successivo il grub sballa e devo reinstallarlo come da guida… esiste un modo per fixare il problema definitivamente?
    Complimenti
    Pier

    • Oskar NRK says

      Grazie Pier, molto gentile :) Non mi è mai successo quello che descrivi, ora come ora non saprei aiutarti. Anche perché quando avevo Vista in dualboot si era fatto 33 aggiornamenti che non andavano a buon fine, quindi non li applicava, e non ho mai capito il perché.

  9. aldolat says

    Grazie per la guida, Oskar: utile anche per chi vuole scegliere quale menu di grub usare tra due installazioni Linux.

  10. cecco says

    grazie per l'utile guida!
    volevo solo precisare che al posto del cd live ho usato Super Grub Disk 1.21 (basato su grub2 beta 1.96). Al boot del pc mi riconosceva la partizione di Ubuntu e così sono potuto entrare normalmente nel os di linux. A quel punto mi è bastato digitare con i privilegi di amministratore: update-grub e poi grub-install /dev/sda
    Al riavvio grub2 si caricava perfettamente.

  11. Francesco says

    Grazie Oscar,
    Sempre all'avanguardia
    by
    ciscco

  12. frnz says

    Ciao Oscar
    La mia [ una situazione un po- pi fuori standard che non ne vuole sapere di funzionare. Ho 3 HDD sulpc ma quelli incriminati sono i primi 2. Sul primo ho duoe partizioni WIndows (S.o. + Dati) e sul secondo ho creato partizione per root e per /home. Installo e sembra tutto ok. Al riavvio ubuntu 9.10 non risulta e si avvia Windows senza traccia di Grub. Ora la domanda nasce spontanea> come faccio dalla live dove sono adesso a dirgli che ho MBR su /dev/sda ma la root e' /dev/sdb1 ??

    grazie per quello che qualcuno sara' in grado di partorire

    Alessandro

  13. Oskar NRK says

    Allora, vado a congetture perché non l'ho mai fatto, quindi non mi ritengo responsabile per eventuali casini eh… Seguendo la mia guida:

    mount /dev/sdb1 /mnt (se la tua partizione / è la prima del secondo disco)
    mount -o bind /dev /mnt/dev
    chroot /mnt
    update-grub
    grub-install /dev/sda

    In questo modo DOVRESTI lavorare sul secondo disco ma installare l'MBR sul primo. Come detto non ne sono sicuro. Se provi questi passi o trovi un'alternativa lo puoi scrivere? Grazie :)

  14. Candito says

    Grazie per questa ottima guida!

    Cito solo la mia esperienza: ho reinstallato Windows e, una volta giunto al comando chroot /mnt, ho ricevuto sempre lo stesso errore (tra l'altro diffuso):

    cannot execute /bin/bash: Exec format error

    In un forum hanno dovuto riformattare (logica non linux giusto?) mentre basta usare la live di Karmic (Ubuntu 9.10) e il problema sparirà; con la 9.04 mi succedeva, ho provato con 7.04 (devo averlo letto da qualche parte) ma niente…

    Ad ogni modo ho risolto!

  15. marcello says

    geniale!!! grazie mille

  16. Scugnizzo says

    Ciao a tutti,
    scusate….ma non riesco a trovare una spiegazione per l’opzione bind dell’istruzione mount (sono stra niubbo).
    Non c’ho capito niente usando il manuale (man)….qualcuno me la spiega in due parole?
    Grazie

  17. tomaso20 says

    Sono riuscitoa far partire ubuntu 9.10 ma non compare il menu di grub ovvero quale sistema far partire prima o dopo e non so come fare per far comparire anche windows vista

    • oskarnrk says

      Guarda la parte del post dove parlo del pacchetto os-prober, è quella la soluzione.

  18. six110 says

    Io ho risolto consultando la documentazione ufficiale!
    https://help.ubuntu.com/community/Grub2#Reinstall...

  19. mat says

    io ho ripristinato grub 2 (per fortuna perchè senza ubuntu non saprei come fare) ma win 7 non ne vuole sapere di avviarsi, parte in modalità provvisoria e poi ad un certo punto mentra stà caricando il sitema, si riavvia "senza motivo" così non riesco ad accedere al desktop…da che può dipendere??

    • oskarnrk says

      In quel caso non è più un problema di linux o grub, è proprio di windows. Prova con la modalità provvisoria.

Continuing the Discussion

  1. RSS Week #70: letture per il weekend - Matteo Moro linked to this post on 17 ottobre 2009

    [...] Ripristinare GRUB2 su Ubuntu con un Live CD dopo l’installazione di Windows [...]

  2. » Ripristinare GRUB2 su Ubuntu dopo l’installazione di Windows linked to this post on 22 ottobre 2009

    [...] Oskarnrk.net la guida alla soluzione del problema, ottenuta usando un Live [...]

  3. Ripristinare GRUB2 su Ubuntu dopo l’installazione di Windows | Fabrizio Savella linked to this post on 22 ottobre 2009

    [...] Oskarnrk.net la guida alla soluzione del problema, ottenuta usando un Live [...]

  4. Ripristinare GRUB2 su Ubuntu dopo l linked to this post on 25 ottobre 2009

    [...] [...]

  5. Ripristinare GRUB2 su Ubuntu dopo l’installazione di Windows | Risorse Free linked to this post on 14 novembre 2009

    [...] Oskarnrk.net la guida alla soluzione del problema, ottenuta usando un Live CD. Nel caso abbiate la necessità di [...]

  6. Ripristinare GRUB2 su Ubuntu con un Live CD dopo l’installazione di Windows | Il cucchiaio non esiste. - Ing. Mattia Notari linked to this post on 31 gennaio 2010

    [...] by Mattia Notari on gen.31, 2010, under News Ripristinare GRUB2 su Ubuntu con un Live CD dopo l’installazione di Windows | Il cucchiaio non esi…. [...]

  7. Notizie dai blog su Ripristinare GRUB dopo l’installazione di Windows linked to this post on 17 marzo 2010

    [...] Ripristinare GRUB2 su Ubuntu con un Live CD dopo l’installazione di Windows Un mese fa ho cambiato l’harddisk del mio portatile (SATA 250GB 7200rpm). Ritrovandomi senza dvd di ripristino di Windows Vista e senza partizione di ripristino, facendo l’installazione sul disco nuovo ho messo direttamente Ubuntu e basta. blog: oskar nrk blog | leggi l'articolo [...]



Some HTML is OK

or, reply to this post via trackback.