Grubがカーネルを見つけることができません

Grubがカーネルを見つけることができません

Ctrl昨日アップデートをインストールしましたが、Shift+で何かをコピーしようとしましたが、誤って+でCカーネルアップデートを終了しました。その後、アップデートプロセスを再開しましたが、再起動後にシステムが起動しなくなり、Grubに次のエラーメッセージが表示されます。CtrlC

error: file `/boot/vmlinuz-5.10-x86_64' not found.
error: you need to load the kernel first.
Press any key to continue...
Failed to load both default and fallback entries.
Press any key to continue...

それからGrubメニューに入りました。 「Manjaro Linuxの詳細オプション」メニューには、「Manjaro Linux (Kernel: 5.10.70-1-MANJARO x64)」と「Manjaro Linux (Kernel: 5.10.70-1-MANJARO x64 - fallback initramfs)」の項目が含まれています。両方とも同じエラーが発生します。

Grubコマンドライン(システムパーティション)で実行すると、関連する唯一ls (hd1,gpt2)/bootの項目は次のとおりです。

linux510-x86_64.kver

(ブートパーティション)を使用すると、ls (hd1,gpt1)/boot出力ははるかに良く見え、関連項目は次のようになります。

linux510-x86_64.kver
vmlinuz-5.10-x86_64
initramfs-5.10-x86_64.img
initramfs-5.10-x86_64-fallback.img
linux515-x86_64.kver
vmlinuz-5.15-x86_64
initramfs-5.15-x86_64.img
initramfs-5.15-x86_64-fallback.img

5.15カーネルは私がライブブートUSBを使ってインストールしたchrootので、そこで何か動作することは間違いありませんが...まだ起動しません。

私が試したすべてをもう知りません。ほとんどの場合、今日再起動するたびにブラウザの履歴がリセットされるためです。しかし、そのいくつかは次のとおりです。

  • すべてのlinux510*パッケージを再インストール
  • 異なるカーネルバージョンのインストールmhwd-kernel
  • grub-mkconfigmkinitcpiogrub-installおよび内部update-grubの様々な組み合わせの実行manjaro-chroot(過去数ラウンドで出力がすべて正常に見える)

前回試したときに更新をロールバックしようとしませんでした。

私はManjaroの一般的な(ビベータ)バージョンを使用しており、以前はGrubをあまり使用していませんでした。同様の問題があるほとんどの人とは異なり、私はデュアルブート設定を使用しません。役に立つ場合は、パッケージの更新の一部を一覧表示できますが、今は更新が1400を超えるため、一覧表示しません。インストールされたパッケージの一部のバージョン番号:

  • manjaro-release 21.2pre-1
  • grub 2.06-1
  • linux510 5.10.79-1

ライブUSBもManjaroですが、必要なアップデートのみがインストールされた以前のバージョンです。

Grubが明らかに存在するファイルを見つけることができないのはなぜですか?もちろんです。この問題をどのように解決しますか?

答え1

今私のシステムは修正されましたが、実際にどのステップを踏んだのかわかりません。最も重要なのは、おそらくアクティブなカーネルを適切に「簡単に」再インストールするのではなく、完全に削除して再インストールすることです。mhwd-kernel -r linux510現在5.10カーネルを使用している場合、このコマンドは機能しませんが、次のコマンドを使用できます。

yay -Rdd linux510 linux510-acpi_call linux510-bbswitch linux510-broadcom-wl linux510-headers linux510-nvidia linux510-r8168 linux510-rtl8723bu linux510-tp_smapi linux510-vhba-module linux510-virtualbox-host-modules

このdd部分を使用すると、すべての依存関係の問題を無視できます。

トラブルシューティング中にインストールされた5.15カーネルも再び削除されました。その後、次のような内容で5.10カーネルを再インストールしました。

yay -S linux510 linux510-extramodules

以降のディレクトリには、以前に存在していなかった/bootファイルinitramfs-5.10-x86_64-fallback.img、、が含まれますinitramfs-5.10-x86_64.imgintel-ucode.imgvmlinuz-5.10-x86_64


私も次のコマンドを使用しました。

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB

私はそうだったいいえEFIディレクトリが/boot/EFI存在していても、それを使用してください。このコマンドが必要かどうかわかりません。

また、次のコマンドを使用しました。

grub-mkconfig -o /boot/grub/grub.cfg
mkinitcpio -P
update-grub

このうちどれが必要かわかりません。その後、再起動後、Biosで「UEFI」で始まる項目を選択したところ、システムは再び正常に起動しました。

関連情報