J'ai installé Fedora sur ma machine avec /
partition, swap
partition et ESP
partition pour le démarrage EFI.
Maintenant, j'installais Elementary OS au lieu de Fedora.
- J'ai formaté la
/
partition (/ dev / sda3) - Formatage de la partition de swap (/ dev / sda4)
- Mais n'a pas formaté la partition de démarrage EFI (/ dev / sda1)
Maintenant, quand je démarre, je reçois mon ancien menu grub qui a été installé par Fedora. Je peux uniquement démarrer dans Elementary OS en:
- Entrer dans le menu de démarrage.
- Sélection du démarrage à partir du fichier EFI
- Naviguez
/dev/sda1/
pour obtenir leelementary
répertoire contenant legrubx64.efi
fichier. Ce qui est/boot/efi/EFI/elementary/grubx64.efi
.
Comment puis-je résoudre ce problème? J'ai pensé à formater la partition de démarrage /dev/sda1/
avec fat16
ou quelque chose, puis à réinstaller grub dessus.
Mon /dev/sda1
contient maintenant ceci:
root@rafael:/home/rafael# ls /boot/efi/
EFI mach_kernel System
root@rafael:/home/rafael# ls /boot/efi/EFI/
BOOT/ elementary/ fedora/
root@rafael:/home/rafael# ls /boot/efi/EFI/fedora/
BOOT.CSV fonts gcdx64.efi grub.cfg grubx64.efi MokManager.efi shim.efi shim-fedora.efi
root@rafael:/home/rafael# ls /boot/efi/EFI/elementary/
grubx64.efi
Voici ma efibootmgr
sortie:
BootCurrent: 003D
Timeout: 0 seconds
BootOrder: 2001,2002,2003
Boot0000* Notebook Hard Drive
Boot0010* Internal CD/DVD ROM Drive
Boot0011* Internal CD/DVD ROM Drive (UEFI)
Boot0012* Fedora
Boot0013* Fedora
Boot0014* Fedora
Boot0015* Fedora
Boot0016* Fedora
Boot0017* Fedora
Boot0018* Fedora
Boot0019* Fedora
Boot001A* Fedora
Boot001B* Fedora
Boot001C* Fedora
Boot001D* Fedora
Boot001E* Fedora
Boot001F* elementary
Boot2001* USB Drive (UEFI)
Boot2002* Internal CD/DVD ROM Drive (UEFI)
Toute aide serait appréciée.
efibootmgr
sortie pour voir si l'entrée de l'élémentaire est là (il semble que ce ne soit pas le cas, mais pour être sûr). Vous aimerez également refind en tant que gestionnaire de démarrage. Juste au cas où vous voudriez jeter un coup d'œil à E17 sur ce système, il y a une image qui fonctionne (lien ISO 490M) ainsi que des instantanés hebdomadaires . Il est probablement inférieur en ce qui concerne E polisefibootmgr
sortie.Réponses:
Je ne sais pas pourquoi vous utilisez grub en premier lieu. UEFI agit comme un chargeur de démarrage et permet de sélectionner différents systèmes d'exploitation ou noyaux individuels dans un menu de démarrage. Bien qu'il y ait quelques exceptions, il n'est généralement pas nécessaire de chaîner un deuxième chargeur de démarrage, grub dans ce cas.
Vous mentionnez que vous avez installé OS élémentaire au lieu de Fedora, ce qui signifie que vous n'avez besoin de charger qu'un seul système d'exploitation. Ici, je présente un moyen de le faire sans utiliser grub. Le noyau doit être compilé avec EFI_STUB, si c'est le cas, vous pouvez vérifier avec
Copiez le noyau et initramfs sur l'ESP (partition système EFI)
Enregistrer le noyau comme option de démarrage dans UEFI
L'
--disk
argument prend le nom de périphérique du disque, par exemple--disk /dev/sda
, l'--part
argument prend le numéro de partition de l'ESP, par exemple 4. Vous pouvez trouver le numéro de partition ESP avec la commande suivante:Assurez-vous de répéter les étapes après chaque mise à jour du noyau
Soit vous le faites manuellement (répétez simplement les étapes ci-dessus), soit vous écrivez un petit script qui fait le travail. Pour l'automatiser complètement, le script pourrait être connecté à la procédure de post-installation du noyau, à la procédure de post-mise à jour initramfs et à la procédure postrm du noyau (pour supprimer l'entrée de démarrage UEFI). En fait, je ne sais pas pourquoi cela n'est pas fait par défaut dans les distributions, c'est juste quelques lignes de code.
la source
grep EFI_STUB /boot/config-3.2.0-49-generic
mais je n'ai rien obtenu.Je l'ai fait !
Tout d'abord, j'ai supprimé toutes les entrées de démarrage inutiles en:
Ensuite, reformater la partition ESP avec le
FAT32
système de fichiers.Puis installé grub sur
/dev/sda
NOT/dev/sda1
la source