Grub2: ripristino di Grub da live-cd

Può succedere che GRUB2, per svariate cause non si avvii più, rendendo inservibile il nostro sistema operativo Debian (o altri sistemi operativi GNU/Linux installati nell’hard disk).

Una delle cause principali di tutto questo è per esempio il voler installare anche Windows in un altra partizione dell’hard disk successivamente ad una installazione GNU/Linux.

Altre volte GRUB2 si può rompere per smanettamenti maldestri o per aggiornamenti sbagliati…

La procedura di ripristino si basa sull’utilizzo del live-cd di Ubuntu LTS (come per esempio il cd di 12.04 LTS).

Preambolo: supponiamo di voler ripristinare Grub2 che si trova nella partizione /dev/sda1 dell’hard disk.

Effettuare il boot da cd live e scegliere di provare Ubuntu senza installazione. Avviata la sessione aprire un terminale e lanciare il comando:

sudo fdisk -l

per individuare la partizione che ci interessa. Come detto nel preambolo, supponiamo che la partizione sia /dev/sda1.

Si comincia con il montare questa partizione:

sudo mount /dev/sda1/mnt

Successivamente si montano gli altri dispositivi (uno per volta):

sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

Da ora i comandi vanno eseguiti dal sistema montato. Si utilizza chroot per entrare nel sistema:

sudo chroot /mnt

Se ci sono partizioni separate, occorre montare la partizione di boot:

mount /dev/sda1 /boot

Se al contrario c’è un’ unica partizione dopo il chroot si prosegue come segue, dando i comandi in sequenza:

grub-install /dev/sda

os-prober (nel caso ci siano altri sistemi operativi da far riconoscere a Grub):

update-grub

Se il comando grub-install /dev/sda dovesse dare errori, sostituirlo con:

grub-install --recheck /dev/sda

Grub, dalla partizione /dev/sda1 sarà installato nell’MBR del disco /dev/sda.

Terminiamo le operazioni dando il comando: exit

Procediamo allo smontaggio delle partizioni montate precedentemente, dando in sequenza i seguenti comandi:

cd ~
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/

Riavviamo il sistema dopo aver rimosso il cd.

Su Rodolfo Giometti

Ingegnere informatico libero professionista ed esperto GNU/Linux offre supporto per: - device drivers; - sistemi embedded; - sviluppo applicazioni industriali per controllo automatico e monitoraggio remoto; - corsi di formazione dedicati. Manutentore del progetto LinuxPPS (il sottosistema Pulse Per Second di Linux) contribuisce attivamente allo sviluppo del kernel Linux con diverse patch riguardanti varie applicazioni del kernel e dispositivi (switch, fisici di rete, RTC, USB, I2C, network, ecc.). Nei 15+ anni di esperienza su Linux ha lavorato con le piattaforme x86, ARM, MIPS & PowerPC.

Lascia un commento

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi