Je veux réinstaller Grub 2 et j'ai trouvé ces instructions : Comment réparer, restaurer ou réinstaller Grub 2 avec un CD live ou une clé USB Ubuntu . Dans mon cas, le boot loader est installé dans la partition EFI. Si j'utilise les commandes fournies dans ce guide, est-ce que boot loader sera réinstallé dans la partition EFI automatiquement, ou sera-t-il installé dans la partition racine où Ubuntu est installé ? Évidemment, je ne veux pas que cela se produise.
Réponses
Trop de publicités?Réinstallez le Grub Grub à votre installation Ubuntu en mode EFI de cette façon ....
Démarrez à partir du support d'installation d'Ubuntu et sélectionnez "Essayer Ubuntu sans l'installer".
(Démarrez votre support d'installation en mode EFI, sélectionnez l'entrée Ubuntu avec UEFI devant).
Une fois que vous êtes sur le bureau Live, ouvrez un terminal et exécutez ces commandes :
sudo mount /dev/sdXY /mnt
sudo mount /dev/sdXX /mnt/boot/efi
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
sudo chroot /mnt
grub-install /dev/sdX
update-grub
Note : sdX
= disque sdXX
= efi partition | sdXY
= partition système
Pour identifier les partitions, utilisez GParted, l'outil est inclus dans le support d'installation.
Après avoir exécuté les commandes Grub sera installé dans la partition EFI séparée.
C'est la seule façon qui a fonctionné pour moi : (Système : sdb8, boot : sdb6, efi : sdb2)
sudo mount /dev/sdb8 /mnt
sudo mount /dev/sdb6 /mnt/boot
sudo mount /dev/sdb2 /mnt/boot/efi
sudo mount --bind /dev /mnt/dev &&
sudo mount --bind /dev/pts /mnt/dev/pts &&
sudo mount --bind /proc /mnt/proc &&
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install --target=x86_64-efi /dev/sdb
grub-install --recheck /dev/sdb
exit &&
sudo umount /mnt/sys &&
sudo umount /mnt/proc &&
sudo umount /mnt/dev/pts &&
sudo umount /mnt/dev &&
sudo umount /mnt
Voici comment j'ai procédé sur un bureau standard x86_amd64 EFI, sans chrooting, en supposant que vous avez une partition contenant Ubuntu sur votre disque dur et éventuellement une partition EFI où Grub devrait être installé.
# boot on a live Ubuntu, I used 18.04 but more recent should work
# if you have currently no EFI partition (maybe it was deleted,
# or you are migrating to a new drive):
# sudo gparted
# - create a FAT 32 partition of around 100 MB on the disk of your choice
# (in general the one that host the Ubuntu partition). If you plan to
# move or resize some paritions, anticipate that (for instance by
# creating the EFI partition at the end of the free space).
# - set the flag esp on this partition (the flag boot will also be selected)
# now assuming that the Ubuntu partition is `/dev/sda2` and the (possibly new) EFI partition is `/dev/sda1`
sudo apt install grub-efi
sudo mkdir /media/root && sudo mount /dev/sda2 /media/root
sudo mkdir /media/efi && sudo mount /dev/sda1 /media/efi
sudo grub-install --target=x86_64-efi /dev/sda --efi-directory=/media/efi --boot-directory=/media/root/boot
Cela devrait donner :
Installation pour la plateforme x86_64-efi.
L'installation est terminée. Aucune erreur n'a été signalée.
Puis redémarrez et vous devriez avoir terminé. Vous devrez peut-être indiquer à votre BIOS quel lecteur utiliser, ou quelle partition EFI utiliser, ou quel binaire EFI utiliser.
Si vous avez créé une nouvelle partition EFI, vous devrez peut-être l'ajouter à la liste des partitions EFI. /etc/fstab
d'avoir update-grub
fonctionne correctement.
Pour plus d'informations : https://wiki.archlinux.org/index.php/Multiboot_USB_drive#Hybrid_UEFI_GPT_+_BIOS_GPT/MBR_boot
Merci à @cl-netbox pour les instructions !
Après avoir effectué la mise à jour (Linux Mint 18.2 Sonya vers 18.3 Sylvia), mon système ne démarrait pas. J'ai donc suivi les instructions ci-dessus, mais sans succès. J'ai remarqué cependant que ma machine a /boot dans une partition séparée (peut-être parce que j'utilise LVM), donc mon processus légèrement modifié était :
sudo mount /dev/sdXXX /mnt
sudo mount /dev/sdXY /mnt/boot
sudo mount /dev/sdXX /mnt/boot/efi
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
sudo chroot /mnt
grub-install /dev/sdX
update-grub
Note : sdX = disque | sdXX = partition efi | sdXY = partition de démarrage | sdXXX = partition système
Aussi, si vous démarrez à partir d'un live cd pour récupérer, il se peut que vous manquiez le paquet Grub-efi-amd64-bin et ensuite la ligne
"grub-install --target=x86_64-efi /dev/sdb"
échoue avec un message d'erreur : "Grub-install : error : /usr/lib/Grub/x86_64-efi/modinfo.sh n'existe pas. Veuillez spécifier --target ou --directory".
Dans ce cas, exécutez ceci en dehors de chroot
sudo apt get grub-efi-amd64-bin
et ensuite ajouter /usr/lib/Grub/x86_64-efi aux montages chroot.
BTW Le paramètre "/dev/sdb" est obsolète et est ignoré.
- Réponses précédentes
- Plus de réponses