web-dev-qa-db-fra.com

Mettre à jour les entrées du menu grub pour pointer correctement vers les anciennes installations de système d'exploitation

J'ai récemment ajouté un SSD NVMe à mon système. J'ai installé Windows et Ubuntu sur ce nouveau SSD NVMe. Je souhaite conserver un Ubuntu précédemment installé.

NVMe0 - New Ubuntu 18.04 (works) [1]
      - New windows 10 (works) [2]
SSD0  - Ubuntu 18.04 (old) [3]
SSD1  - Windows 10 (old) [4]

J'ai essayé de lancer update-grub lorsque activé [1]. Il en est résulté que le menu grub avait des entrées supplémentaires pour [3] et [4]. Cependant, lorsque je choisis l'un de ces deux, j'obtiens l'erreur suivante:

error: no such device: B6C5-4C11.
error: disk 'hd3,gpt2' not found.

Si j'essaie de démarrer à partir de SSD0, j'obtiens mon ancien menu grub où je peux démarrer dans [3] et [4] mais pas [1] et [2].

Ce que j'essaie d'accomplir, c'est de pouvoir accéder à [1], [2], [3] et [4] à partir d'un menu grub après avoir démarré sur NVMe0.

Voici un croquis

a sketch of the disk/OS layout

Mise à jour 1

UUID de la partition EFI NVMe0: A85E-D029 Contenu de /etc/fstab:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/nvme0n1p5 during installation
UUID=0eb898d2-f93b-490f-b7f0-40d1ff6cacce /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/nvme0n1p2 during installation
UUID=A85E-D029  /boot/efi       vfat    umask=0077      0       1
/swapfile                                 none            swap    sw              0       0
  1. L'ancien Windows est sur /dev/sde4 avec UUID E23CCF783CCF45EF.
  2. L'ancien Ubuntu est sur /dev/sdf1 avec UUID 664b5f90-b52c-4f6b-b2b7-89933eb7bc27

Voici les deux entrées générées par update-grub qui jette les erreurs.

menuentry 'Windows Boot Manager (on /dev/sde2)' --class windows --class os $menuentry_id_option 'osprober-efi-B6C5-4C11' {
    insmod part_gpt
    insmod fat
    set root='hd4,gpt2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd4,gpt2 --hint-efi=hd4,gpt2 --hint-baremetal=ahci4,gpt2  B6C5-4C11
    else
      search --no-floppy --fs-uuid --set=root B6C5-4C11
    fi
    chainloader /efi/Microsoft/Boot/bootmgfw.efi
}
menuentry 'Ubuntu 18.04.2 LTS (18.04) (on /dev/sdf1)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-664b5f90-b52c-4f6b-b2b7-89933eb7bc27' {
    insmod part_gpt
    insmod ext2
    set root='hd5,gpt1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd5,gpt1 --hint-efi=hd5,gpt1 --hint-baremetal=ahci5,gpt1  664b5f90-b52c-4f6b-b2b7-89933eb7bc27
    else
      search --no-floppy --fs-uuid --set=root 664b5f90-b52c-4f6b-b2b7-89933eb7bc27
    fi
    linux /boot/vmlinuz-4.15.0-46-generic root=UUID=664b5f90-b52c-4f6b-b2b7-89933eb7bc27 ro quiet splash $vt_handoff
    initrd /boot/initrd.img-4.15.0-46-generic
}

Mise à jour 2

Les 4 OS sont installés sur les disques internes en mode UEFI. La sortie de update-grub:

Sourcing file `/etc/default/grub'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.18.0-16-generic
Found initrd image: /boot/initrd.img-4.18.0-16-generic
Found linux image: /boot/vmlinuz-4.18.0-15-generic
Found initrd image: /boot/initrd.img-4.18.0-15-generic
Found Windows Boot Manager on /dev/nvme0n1p2@/EFI/Microsoft/Boot/bootmgfw.efi
Found Windows Boot Manager on /dev/sde2@/efi/Microsoft/Boot/bootmgfw.efi
Found Ubuntu 18.04.2 LTS (18.04) on /dev/sdf1
Adding boot menu entry for EFI firmware configuration
done

Mise à jour 3

J'ai installé la réparation de démarrage.

Sudo add-apt-repository ppa:yannubuntu/boot-repair
Sudo apt-get update
Sudo apt-get install -y boot-repair

Génération du le résumé produit un rapport de 2,1k lignes .

2
LizardMaster

Je ne suis pas sûr à quel point ce problème a été résolu, comme je l'ai fait avant de tester.

  1. Courir update-grub sur Ubuntu nouvellement installé
  2. Courir update-grub sur une ancienne installation Ubunt
  3. Paramètres BIOS vérifiés
  4. Dernier bios flashé
  5. Réinitialiser les paramètres du bios
  6. Redéfinissez tous les paramètres sur ce qu'ils étaient avant la réinitialisation (UEFI au lieu d'héritage, etc.)

Je ne vois pas pourquoi la mise à jour du BIOS aurait un impact car le seul élément du journal des modifications est: "Mettre à jour le microcode du processeur pour un problème de sécurité Intel". Donc, ma meilleure supposition est: l'étape 2 a résolu le problème.

0
LizardMaster