Windows 10のインストールの横にUbuntuをインストールした後、initramfsがシェルに陥るのはなぜですか?

Windows 10のインストールの横にUbuntuをインストールした後、initramfsがシェルに陥るのはなぜですか?

Windows 10がプリインストールされているASUS Zenbook 13 UX331UNにLive USB経由でUbuntu 18.04 LTSをインストールしました。セキュアブートが有効で高速ブートが無効になっているUEFIシステム。私は成功せずにUbuntuを起動しようと数日間ここに座っていました。

fdisk -lu次のパーティションレイアウトを教えてください。

Disk /dev/sda: 477 GiB, 512110190592 bytes, 1000215216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 94F7C923-6092-46D5-AFD6-38F3F4F6096F

Device         Start        End   Sectors   Size Type
/dev/sda1       2048     534527    532480   260M EFI System
/dev/sda2     534528     567295     32768    16M Microsoft reserved
/dev/sda3     567296  946147327 945580032 450.9G Microsoft basic data
/dev/sda4  998576128 1000214527   1638400   800M Windows recovery environment
/dev/sda5  946147328  998576127  52428800    25G Linux filesystem

Partition table entries are not in disk order.

Ubuntuインストーラによって生成されたファイルには、boot/grub/grub.cfgUbuntu起動用の次のメニュー項目が含まれています。

menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-97209f84-060d-4e49-a790-e9af75f2dc40' {
    ...
    set root='hd0,gpt5'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt5 --hint-efi=hd0,gpt5 --hint-baremetal=ahci0,gpt5  97209f84-060d-4e49-a790-e9af75f2dc40
    else
      search --no-floppy --fs-uuid --set=root 97209f84-060d-4e49-a790-e9af75f2dc40
    fi
    linux   /boot/vmlinuz-4.15.0-20-generic.efi.signed root=/dev/sda5 ro  quiet splash $vt_handoff
    initrd  /boot/initrd.img-4.15.0-20-generic
}

しかし、これによって

ALERT! /dev/disk/by-uuid/97209f84-060d-4e49-a790-e9af75f2dc40 does not exist. Dropping to a shell
initramfs:_

Grubの再インストール、ブート回復、EFIの手動変更など、できるだけ多くの修正を試しましたが...何もありません。

最後の手段として、多くのチュートリアルで述べたように、次のコマンドを使用して grub プロンプトで Ubuntu を手動で起動してみました。

set root=(hd0,5)
linux   /vmlinuz root=/dev/sda5 ro
initrd  /initrd.img
boot

そして…チャジャン、首尾よく始まりました。

その後、このコマンドをgrub.cfgに採用し、メニュー項目は次のようになります。

menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-97209f84-060d-4e49-a790-e9af75f2dc40' {
    ...
    set root=(hd0,5)
    linux   /vmlinuz root=/dev/sda5 ro quiet splash
    initrd  /initrd.img
}

このエントリを設定すると、Ubuntuが正常に起動します。

grub.cfgこのように変化するのは効果的なアプローチですか?これらの変更によって引き起こされる可能性のある副作用に直面する必要がありますか? Ubuntuはなぜ自分でジョブを作成できないのですかgrub.cfg

アップデート1

犯人を見つけたと思います。

まず、UUIDGillesがすでに指摘したとおりに間違っているので、元の状態に戻してgrub.cfgすべての項目97209f84-44ada74f-。しかし、それにもかかわらずまだ開始されていません。殻に落ちる早く。UUID問題を確認するために、UUID別のバージョンのUbuntuを再インストールしましたが(パーティションがフォーマットされたときに作成されたことがわかります)、grub.cfgのステータスは正しいUUIDです/dev/sda5。非常に奇妙な。したがって、これはUUID明らかに問題ではありません。

set root='hd0,gpt5'第二に、 に入れ替えたがset root=(hd0,5)あまり差がないようです。 3回目の試みで、linuxコマンドのファイル名を.../boot/vmlinuz-4.15.0-20-generic.efi.signedに変更したところ、/boot/vmlinuz-4.15.0-20-genericこれが始まります。

ファイルの存在を正常に確認したら、/boot/vmlinuz-4.15.0-20-generic.efi.signed次の質問に答えて、システムはそのファイルを信頼していないと思います。https://askubuntu.com/q/883814/678215

/boot/vmlinuz-4.15.0-20-generic.efi.signedなぜ動作しないのかご存知ですか?

関連情報