1 votes

Ubuntu 20.04 Grub/problème de système de fichiers sur les disques SSD à échange à chaud

Mise en place :

  • Plusieurs ordinateurs hors ligne avec des disques SSD uniques remplaçables à chaud (un seul disque SSD contenant le système d'exploitation et les données)
  • Ubuntu 20.04.1 installé en mode UEFI (Single OS, disque entier)

Problème : Après être passé à Ubuntu 20.04 LTS, il est devenu courant qu'après l'arrêt complet d'un PC, le retrait du SSD (contenant le système d'exploitation) et son déplacement vers un autre PC (exactement le même matériel), je doive faire face à un sauvetage Grub. Cela ne s'est pas produit dans 16.04 LTS (non UEFI) et j'ai pu remplacer les disques SSD normalement.

Symptômes :

  • Après avoir déplacé le SSD (100% sûr d'un arrêt correct), je suis confronté à la fenêtre Grub (en mode secours) à la fois sur le PC d'origine et sur le nouveau PC (c'est-à-dire que le système d'exploitation est corrompu).
  • Même en configurant Grub en mode manuel (set root=(hd0,gpt2) ; linux /boot/vm...) et en appelant 'boot', j'arrive à un environnement de ligne de commande avec (initramfs) au début de la ligne où il est suggéré d'exécuter fsck sur la partition racine parce que la somme de contrôle est erronée !
  • fsck invalide presque tous les secteurs et la partition devient inutilisable.

Suggestions :

  • La seule chose à laquelle je peux penser (bien que ce ne soit pas nécessairement vrai) est l'utilisation de LZ4 pour les initramfs dans Ubuntu 20.04. Ou il pourrait s'agir de problèmes Grub avec le mode UEFI. Étant donné que la plupart des gens n'ont pas l'habitude de déplacer leur disque de système d'exploitation d'un PC à l'autre, il s'agit peut-être d'un problème rare.

Notas:

  • Je ne fais rien d'étrange avec ces disques. Comme toutes mes configurations Windows (et précédemment, Ubuntu 16.04 LTS) fonctionnent correctement pendant ces remplacements.

1voto

oldfred Points 10672

Le démarrage des lecteurs externes devrait se faire à partir d'une partition système ESP - efi sur le lecteur externe en tant qu'entrée de lecteur. Le programme d'installation Ubuntu Ubiquity crée une entrée de démarrage standard "ubuntu" sur l'ESP du lecteur interne pour les lecteurs externes également, et si le lecteur externe est manquant, vous ne pouvez pas démarrer l'entrée par défaut.

L'UEFI oublie une entrée de démarrage interne spécifique de l'UEFI ou la réinitialise si le lecteur est retiré. Regardez l'entrée ubuntu avant et après le retrait du disque.

sudo efibootmgr -v 

L'UEFI dispose d'un système de secours ou d'une entrée sur le disque dur qui utilise /EFI/Boot/bootx64.efi, ce qui devrait vous permettre de démarrer. En général, bootx64.efi est une copie de /EFI/ubuntu/shimx64.efi. Certains UEFI semblent trouver automatiquement une entrée Windows et la recréer, mais aucun autre système. Les disques externes démarrent tous à partir du même type d'entrée que le système de secours sur les disques internes (le même que celui que vous utilisez pour Ubuntu ou l'installateur de disque flash Windows).

Si vous avez démarré en mode BIOS, il suffit de sélectionner le lecteur dans UEFI/BIOS pour démarrer. Vous devriez pouvoir faire la même chose avec l'UEFI, mais en sélectionnant le lecteur, et non une entrée "ubuntu" qui n'est plus correcte.

Le démarrage du lecteur en mode UEFI utilisera l'entrée de démarrage de secours dans /EFI/Boot/bootx64.efi. Windows fait de bootx64.efi une copie du fichier de démarrage Windows .efi, l'installation Ubuntu en fait une copie de shimx64.efi. Vous devriez donc pouvoir démarrer directement le lecteur.

Vous devez faire en sorte que le démarrage par défaut se fasse à partir de l'entrée ESP d'un disque interne. Vous devrez ensuite choisir manuellement dans l'UEFI les entrées pour chaque disque externe.

Vous pouvez également dans Grub faire une entrée de type configfile pour avoir vos autres disques ESP comme entrées de démarrage. Ou une entrée de démarrage spécifique.

Comment ajouter une entrée de menu GRUB2 pour démarrer Ubuntu installé sur une clé USB ?

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X