Arch Linuxは起動時に/boot/efiを探します。

Arch Linuxは起動時に/boot/efiを探します。

私はデュアルブートArch LinuxとWindowsを持っています。

Windowsのアップデート後にGRUBが失われ、システムがgrub recovery。ただし、完全に起動せず、次のメッセージが表示されます。

filed to listen on Load/Save RF Kill Switch Status /dev/rfkill Match
...    
failed to mount /boot/efi
# Enter recovery mode
...

回復モードでGRUBを復元しようとしました(wikiはここ):

mount /dev/sda5 /mnt # my Linux system
mount /dev/sda3 /efi # my EFI System partition
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB
grub-config -o /boot/grub/grub.cfg

これによりGRUBが再び戻り、Arch LinuxまたはWindowsを同じ方法で選択できるようになりました。

しかし、Arch Linuxを選択しても同じエラーメッセージが表示されましたfailed to mount /boot/efi。 Windowsが正常に起動します。

内容を確認して/boot/efiみると実際には空でした。私initramfs-linux.imginitramfs-linux-fallback.imgおよびファイルintel-ucode.imgvmlinux-linux.imgにあります/boot/

しかし、私は/boot/grub/grub.cfg探しinitrdて、intel-ucode.img正確にinitramfs-linux-lts.img探してみてください/boot/

それからArchフォーラムで私に似た質問をたくさん見つけました(例:これ)。しかし、問題が発生する前はLinuxカーネルを更新せず、Linuxのインストールには何も触れませんでした。そして言及された文章とは異なり、私はvmlinuz-arch.efi同様の内容もないようです/boot/

私もArch Wikiを探索するのに時間を費やしました。私が理解したのは、GRUBリカバリを扱うwikiページは、一般的に私がすでに試したのと同じプロセスを示唆していますがarch-isoarch-chroot/dev/sda5

だからいくつかの質問があります。その中で最も重要な質問は:Arch Linuxの起動プロセスをどのように復元しますか?

もう一つのより具体的なものGRUBステップが過ぎましたが、なぜsystemd再び見つけようとしますか?/boot/efi? GRUBは開始項目を見つけませんか? GRUBが私のArch Linux initramを獲得したようです(少なくともGRUBは正しいGRUBエントリを実行し、エコーメッセージを追加して確認しました/boot/grub/grub.cfg)。

もっと奇妙なことは出て/boot/efiから/dev/sda2Windows recovery environmentいいえ /dev/sda3これはEFI System

$systemctl status boot-efi.mount
boot-efi.mount --- /boot/efi
Loaded: loaded (/etc/fstab; generated)
Active: Failed (Result: exit-code) ...
Where: /boot/efi
What: /dev/sda2
Docs: man:fstab(5)
      man:systemd-fstab-generator(8)

答え1

WindowsのアップデートがEFIパーティションに非常に悪いことをしたようです。

あなたの質問に見られる主な問題は、systemdが/boot/efiを見つけることができないことです。

これは設定ファイルを使用してインストールされます/etc/fstab

何らかの理由で/etc/fstabの/boot/efiエントリは、もはや存在しないファイルシステムを探しています。これはEFIパーティションの再フォーマットと一致し、grubを再インストールする必要がある理由を説明します。

このコマンドを使用してblkid(rootとして実行)、EFIパーティションのUUIDを見つけることができます.その後、/ etc / fstabで編集できます。これにより問題が解決します。


EFIは、ユーティリティが実行時にEFIを読み取って更新できるようにインストールされます。

関連情報