Linux (カスタム Yocto ベースの OS) でデバイスのイメージングに取り組んでいますDell OptiPlex Micro 3000
。Grub バージョン 2.04。A/B パーティション スキームを使用して、フォールバックが適切に機能するようにしていますが、どこかで BIOS (UEFI) 設定と競合している可能性があります。
望ましい結果: いずれかのブート オプションでカーネル パニックが発生した場合、システムは他のブート オプションにフォールバックする必要があります。
実際の結果: カーネル パニックが発生すると、システムが再起動し、nvme ドライブが消えます。
ブートオプションは、ルートドライブ(1つは/dev/nvme0n1p2を指し、もう1つは/dev/nvme0n1p3を指す)を除いて似ています。例:
linux /bzImage root=PARTUUID=*snip* rootwait rw oprofile.timer=1 root/dev/nvme0n1p2 rootfstype=ext4 console=ttyS0,115200 console=tty0 crashkernel=auto panic=5
bzImage が不良な場合、このオプションで起動するとカーネル パニックが発生し、5 秒後に再起動が行われ、その後システムは Clonezilla イメージのサム ドライブで起動します。Clonezilla コマンド ラインを入力すると、ls /dev
nvme ドライブやパーティションがありません。実際、コントローラーもありません/dev/nvme0
。
再起動してドライブのブート オプションを選択すると、「ハード ドライブがありません」という UEFI のようなウィンドウが表示されます。
UEFI メニューを開いてドライブのブート オプションを追加しようとすると、デバイスがリストされません。
しかし、奇妙なのはここです。もし私が:
- カーネルパニック
- リブート
- UEFI設定に入る
- 終了(いかなる変更や修正も保存もなし)
- リブート
デバイスからブート メニューが読み込まれます。つまり、nvme コントローラーを再び「見つける」唯一の方法は、UEFI 設定を開いて再起動することです。
また、 を指定しないとpanic=5
カーネル パニックが発生し、電源ボタンを押したまま再起動しても、これは起こりません。 の一部としての自動再起動がpanic=5
原因のようです。
- カーネルパニックによって NVMe コントローラが「消失」する原因は何でしょうか?
- UEFI セットアップ メニューに入るだけで、次回の再起動時に NVMe コントローラーが再び元に戻ってしまうのはなぜですか?