Il metodo che ho sempre usato, ogni qual volta ho avuto la necessità di ripristinare il bootloader (Grub2), è stato quello del chroot. Ho preso questa abitudine dopo che mi sono accorto un bel po di tempo fa, che spesso ii metodi "normali" non sempre mi funzionavano. Invece questo metodo non ha mai fallito.
Requisiti:
Cd live, della stessa architettura del sistema da recuperare.
$ sudo fdisk -l
$ sudo mount /dev/sdXX /mnt
$ for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
$ sudo chroot /mnt
# grub-install /dev/sdX
CTRL-D
$ sudo reboot
enjpy 😉
Utilissimo! Lo metto tra i bookmark, grazie 😀
Solo per imparare da chi ne sa molto piu’ di me
il comando for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
dovrebbe montare in /mnt tutti i dev che trova nelle dir /dev /dev/pts /sys e lo switch -B crea un nuovo legame (serve a montare due volte i dev)
Questo serve a grub per riesaminare tutti i dev coinvolti nel boot
avrei ottenuto un risultato analogo montando i dev necessari a mano (le partizioni coinvolte al boot) ?
mi è capitato solo una volta di averne bisogno e ho risolto così
E’ corretto o sbaglio ?
Grazie
in for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
non manca lo / tra mnt e $i ????
@roberto
stesso risultato con questi:
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
@Gerardo
mi pare che vada bene anche così 😉
Hai ragione, lo ‘/’ lo prende dalla lista del comando for
A cosa serve il –bind nel mount?