[BGLug VS] Ripristinare GRUB2 (era Problema con il grub)

elvis elvis@elviselectronics.com
Mar 23 Mar 2010 23:50:07 CET


Ciao a tutti,

oggi mi sono ritrovato nella condizione di dover ripristinare grub2
per un casino con W7 che mi ha 'piallato' l'MBR.

Ho seguito la procedura che avevo postato, ma era incompleta.
Riporto ciò che mi ha risolto il problema.

Premessa:
Sono partito da un PC nuovo con 2 partizioni:
sda1   Prima partizione nascosta col solito ripristino
sda2   Seconda partizione con W7

Con Gparted (che funziona a meraviglia ho ripartizionato in questo modo:
- sda1         ntfs   ho lasciato la partizione di ripristino
- sda2  /boot  ext3   ho creato un 'buco da 250MB prima della W7
- sda3         ntfs   partizione con W7 , ma 'accorciata di un bel po
                       per fare spazio a linuzzo
- sda4                partizione estesa con tutto il resto
- sda5  swap          da 2GB (con 4GB di ram dovrebbe essere
                       sovrabbondante)
- sda6  /      ext4   root
- sda7  ntfs   Dati

Installato ubuntu 9.10 64bit e va che è una meraviglia.
Poi, dovendo usare win per applicazioni proprietarie,
installando qualche driver si è incasinato W7, come già detto.
Ripristinato W7, scopro che si è 'magnato' l'MBR e grub2.

Installazione (ripristino) di grub2:
1) Avviare da live cd, scegliere la lingua e avviare; attendere
    il desktop.
2) Click destro su Applicazioni -> Modifica menù -> Strumenti di sistema
    spuntare 'Terminale root'  e chiudere
3) Aprire una console con i privilegi di root da:
    Applicazioni -> Strumenti di sistema -> Terminale root
4) fdisk -l    lista tutte le partizioni (vedi sopra).
    Individuare la partizione di root (nel mio caso sda6) e quella di
    boot se non è nella root (sda2 nel mio caso)
5) creare la dir in cui montare linux: es. mkdir /mnt/linux
6) montare la partizione di root con:
    mount /dev/sda6 /mnt/linux
7) se la boot non è sotto root, ma in una partizione diversa, montarla
    con:  mount /dev/sda2 /mnt/linux/boot
    e verificare se c' sono kermel e ramdisk con ls -la /mnt/linux/boot
8) fare il bind dei dev con:
    mount -o bind /dev /mnt/linux/dev
9) chroot /mnt/linux
10)update-grub
11)grub-install /dev/sda
12)exit -> exit fino a quando la console si chiude. Riavviate.

A questo punto grub2 dovrebbe essere installato e linux partire
correttamente.

Potrebbe invece non partire Win. Ci sono varie possibilità:
A)se non rileva win in automatico, potete usare os-prober:
   sempre da console procedete così:
   - sudo os-prober
   - sudo update-grub
   - riavviate
   se non avete os-prober installatelo da synaptic o con
     sudo apt-get install os-prober

B)se hai configurato manualmente 40_custom in /etc/grub.d
   potrebbe essere cambiato l'UUID e bisogna aggiornarlo.
   Per vedere gli UUID dai  ls -l /dev/disk/by-uuid
ecc.

Spero possa essere utile a qualcuno; accetto volentieri
ossrvazioni, correzioni, suggerimenti ecc.

elvis

GNU/Linux user N° 395066.
Sai perche' GNU/Linux e' meglio?
http://www.whylinuxisbetter.net/index_it.php
Se vi è possibile, inviate gli allegati in formato 'Open Document'.
Se avete dubbi su fatti o eventi, visitate i siti antibufala.


Maggiori informazioni sulla lista BglugVS