8 votes

Erreur de mise à niveau de Grub-efi-amd64-signed - le périphérique spécial [old SSD] n'existe pas

En cours d'exécution sudo apt upgrade sur Ubuntu 20.04.1, je reçois toujours l'erreur suivante :

Setting up grub-efi-amd64-signed (1.142.6+2.04-1ubuntu26.4) ...
mount: /var/lib/grub/esp: special device /dev/disk/by-id/ata-Samsung_SSD_860_EVO
_500GB_S3Z1NB0K866259H-part1 does not exist.
dpkg: error processing package grub-efi-amd64-signed (--configure):
 installed grub-efi-amd64-signed package post-installation script subprocess ret
urned error exit status 32
dpkg: dependency problems prevent processing triggers for shim-signed:
 shim-signed depends on grub-efi-amd64-signed | grub-efi-arm64-signed; however:
  Package grub-efi-amd64-signed is not configured yet.
  Package grub-efi-arm64-signed is not installed.

dpkg: error processing package shim-signed (--configure):
 dependency problems - leaving triggers unprocessed
Errors were encountered while processing:
 grub-efi-amd64-signed
 shim-signed

J'aimerais trouver un moyen de corriger l'installation du paquet, de sorte que apt upgrade fonctionne sans erreur.

Le contexte de cette erreur : J'ai acheté un nouveau SSD, je l'ai connecté à mon ordinateur, dd d le contenu de ata-Samsung_SSD_860_EVO_500GB_S3Z1NB0K866259H sur le nouveau disque, édité /etc/fstab pour pointer vers le nouveau disque, j'ai redémarré, mis à jour le BIOS et commencé à utiliser Ubuntu sur le nouveau disque.

Tout a bien fonctionné (démarrage dans Ubuntu, utilisation de logiciels et de matériel, mise à niveau d'autres paquets), sauf cette erreur ci-dessus, où le processus de mise à niveau des paquets Grub essaie de trouver l'ancien lecteur.

Des choses que j'ai essayées :

  1. sudo dpkg --configure -a juste au cas où cela résoudrait le problème comme par magie.
  2. sudo dpkg-reconfigure grub-efi-amd64-signed mais cela renvoie juste 'Grub-efi-amd64-signed est cassé ou n'est pas complètement installé'.
  3. en parcourant l'ensemble de /etc/ y /boot/ pour toute référence à l'ancien disque, il n'y en a pas.

7voto

ashok reddy Points 353

Je viens d'avoir le même problème. Grâce à votre réponse, je savais ce qu'il fallait faire, mais je suggère une solution sans utiliser l'interface graphique de GParted.

sudo parted
(parted) p
Model: ATA WDC WDS500G2B0A (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size   File system  Name  Flags
 1      1049kB  538MB  537MB  fat32              boot
 2      538MB   500GB  500GB  ext4
(parted) set 1 esp on
(parted) p
Model: ATA WDC WDS500G2B0A (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size   File system  Name  Flags
 1      1049kB  538MB  537MB  fat32              boot, esp
 2      538MB   500GB  500GB  ext4

Le drapeau est maintenant activé. Après cela :

sudo apt --fix-broken install

Et maintenant Grub-efi-amd64-signed s'installe correctement et après le redémarrage, tout fonctionne bien.

5voto

Rian Points 63

Le problème était que /boot/efi la partition n'avait pas le esp donc Grub ne pouvait pas déterminer où mettre ses fichiers EFI.

La solution était d'ouvrir gparted, de faire un clic droit sur Gérer les drapeaux en el /boot/efi cliquez sur le bouton esp la case à cocher, puis Fermer .

Puis en courant sudo apt upgrade a posé une question lors de la configuration de la grub-efi-amd64-signed paquet demandant sur quel disque Grub doit être installé :

Le Grub Grub a été précédemment installé sur un disque qui n'est plus présent, ou dont l'identifiant unique a changé pour une raison quelconque.

Depuis le esp est activé dans gparted, la boîte de dialogue permet de cocher la case pour le nouveau disque, je l'ai fait, j'ai appuyé sur Entrée et le paquet a été mis à jour avec succès.

menu de clic droit, drapeaux de gestion en surbrillance, dans gparted

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