/boot/efi/EFI/ubuntuはUbuntuのインストール中に作成されず、インストール後に再起動するとオペレーティングシステムがGrub回復モードに入りました。

/boot/efi/EFI/ubuntuはUbuntuのインストール中に作成されず、インストール後に再起動するとオペレーティングシステムがGrub回復モードに入りました。

次のカーテンパーティションスキームを使用して、efiモードでUbuntu 22をインストールしています。

storage:
      config:
        - grub_device: true
          id: sda
          path: /dev/nvme0n1
          ptable: gpt
          type: disk
          wipe: superblock-recursive
        - device: sda
          flag: bios_grub
          id: bios_boot_partition
          number: 1
          size: 1MB
          type: partition
        - device: sda
          flag: boot
          grub_device: true
          id: boot_efi_part
          number: 2
          path: /dev/nvme0n1p2
          preserve: false
          size: 6GB
          type: partition
          wipe: superblock-recursive
        - device: sda
          flag: boot
          id: rootvg_part
          number: 3
          path: /dev/nvme0n1p3
          size: 720GB
          type: partition
          wipe: superblock-recursive
        - fstype: ext3
          id: fs-root
          label: rootfs
          preserve: false
          type: format
          volume: rootvg_part
        - fstype: vfat
          id: boot_efi_fs
          preserve: false
          type: format
          volume: boot_efi_part
        - device: fs-root
          id: mount-root
          path: /
          type: mount
        - device: boot_efi_fs
          id: boot_efi_mount
          path: /boot/efi
          type: mount

Biosでセキュアブートを無効にしました。

Ubuntu22がインストールされると、オペレーティングシステムを初めて起動してGrubリカバリモードに入ると問題が発生します。多くの研究の終わりに、グラブリカバリモードで次のコマンドを使用してOSをロードできました。

grub> ls
(hd0) (hd0,gpt1) (hd0,gpt2) (hd0,gpt3)
grub> set root=(hd0,gpt3)
grub> linux /boot/vmlinuz-4.15.0-45-generic root=/dev/nvme0n1p3
grub> initrd /boot/initrd.img-3.13.0-29-generic
grub> boot

ただし、再起動するたびに上記のコマンドを実行してOSをロードする必要があります。さらなる調査では、次のリンクを見ました。

"EFI\boot\bootx64.efi" および "EFI\ubuntu\grubx64.efi" および "/boot/grub/x86_64-efi/grub.efi" および "C:\Windows\Boot\EFI\*"

Bootloader path for a permanently installed OS
----------------------------------------------
For Ubuntu, the pathname should be \EFI\Ubuntu\grubx64.efi if you don't need Secure Boot support, or \EFI\Ubuntu\shimx64.efi if the Secure Boot shim is used. The descriptive name is simply "ubuntu" and the optional data is not used.

ただし、私のインストールでは、「\EFI\Ubuntu」パスは生成されたファイルとして生成されませんでした。なぜか分からないの?

後で同じハードウェアに上記のパーティションスキームを使用してUbuntu 18をインストールしようとしましたが、ubuntu 18を正常にインストールしました。そして、必要な起動ファイルが/ EFI / ubuntuフォルダに作成されていることがわかります。

$ ls -l /boot/efi/EFI/ubuntu/
total 4328
-rwxr-xr-x 1 root root     108 Apr 30 01:53 BOOTX64.CSV
-rwxr-xr-x 1 root root     117 Apr 30 01:53 grub.cfg
-rwxr-xr-x 1 root root 2594696 Apr 30 01:53 grubx64.efi
-rwxr-xr-x 1 root root  860824 Apr 30 01:53 mmx64.efi
-rwxr-xr-x 1 root root  960472 Apr 30 01:53 shimx64.efi

試みて、grub rescuコマンドを使用して22オペレーティングシステムをロードし、/ EFI / ubuntuの下のファイルを18インストールからUbuntu 22インストールにコピーしました。 ubuntu22インストールを再開すると、Grubリカバリモードに入るのではなくOSがロードされます。

Ubuntu 22インストールで/ EFI / ubuntuファイルが生成されないのはなぜですか?

ベストアンサー1

おすすめ記事