Mettiamo caso che un giorno arriviate in ufficio e accendendo il PC vi compaia una schermata nera che non lascia presagire nulla di buono. Fortunatamente dopo la schermata di caricamento del BIOS non si sentono rumori inquietanti che lascino presupporre il malfunzionamento del disco di avvio ma allo stesso tempo non compare il menu del boot loader che vi permette di selezionare il sistema operativo che volete avviare a questo giro. Il primo tentativo da fare per vedere cosa si sia rotto è prendere il CD o la USB pen dove avete salvato la distribuzione Linux live da voi preferita e vedere se riuscite ad avviare il PC usando questo come disco di avvio. Se riuscite nell’impresa con molta probabilità vi si è corrotto qualche file del boot loader e pertanto è impossibile avviarlo e procedere al resto delle operazioni necessarie per permettervi di utilizzare il vostro computer come fate abitualmente.
Prima di procedere oltre il consiglio del buon samaritano è ovviamente quello di fare un backup del vostro disco rigido.
Fatto ciò, se dovesse seguire le istruzioni che avevo precedentemente condiviso su come reinstallare GRUB da LiveCD potreste avere qualche problema perché con versioni particolarmente recenti di GRUB (incluse negli ultimi rilasci di Ubuntu), eseguendo i comandi indicati nel vecchio articolo potreste incappare nell’errore:
grub-probe: error: cannot find a device for / (is /dev mounted?
Poco male perché sul sito di Ubuntu le istruzioni per il ripristino di Grub sono aggiornate e perfettamente funzionanti.
Per completezza vi riporto i passaggi ed i comandi di seguito.
- Avviate da LiveCD o USB pen Ubuntu e da terminale eseguite il comando:
sudo fdisk -l
ed individuate il disco di avvio e le sue partizioni.
- Ipotizzando che il visto sistema sia sulla partizione /dev/sda1 montate il disco con il comando:
sudo mount /dev/sda1 /mnt
ed il resto dei dispositivi con:
sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys
- Effettuate un chroot sul vostro sistema:
sudo chroot /mnt
e se avete la partizione di boot separata ricordatevi di montare anche quest’ultima con il medesimo comando usato al punto 2, ovvero (ipotizzando una partizione di boot su /dev/sda2/ ):
mount /dev/sda2 /boot
- Installate, o meglio reinstallate, Grub 2 nel MBR digitando in sequenza i comandi:
grub-install /dev/sda update-grub2
se ricevete degli errori è possibile riprovare con il comando
grub-install --recheck /dev/sda
- Uscite dal chroot e smontate tutti i dispositivi con i comandi:
exit cd ~ sudo umount /mnt/dev sudo umount /mnt/proc sudo umount /mnt/sys sudo umount /mnt/
- Riavviate ricordandovi di scegliere il vostro disco rigido come disco di avvio e, se come molto probabilmente era, il problema era la corruzione di qualche file di Grub tutto dovrebbe essere rientrato.