EFISTUBからLinuxカーネルを直接起動することはできません。

EFISTUBからLinuxカーネルを直接起動することはできません。

組み込みパラメータとデフォルトの初期化パスなしですべてのEFI関連オプションを有効にし、ソースからLinuxカーネル5.18.4をコンパイルしました。また、言及する価値があるのは、initramfs / initrdを使用していないことです。

EFI対応の仮想マシンでVirtualBox 6.1.34を介してこのカーネルを起動しようとしています。

インストールディスク(/dev/sda)には2つのパーティションがあります。

  • /dev/sda1FAT32でフォーマットされた512mb EFIシステムパーティションがインストールされています。/boot
  • /dev/sda2ext4でフォーマットされた15.5GBのルートパーティションがインストールされています。/

カーネルがあります。この命名規則を使用すると、自動的に起動し、UEFIシェルをスキップし、次のように起動/boot/EFI/BOOT/boox64.efiエントリを作成するefibootmgr必要がないようです。

起動しようとするたびに、次のエラーが発生します。

仮想マシンUEFIエラー

以前の試みでは、カーネルパスの変更やその他の調整など、いくつかの小さな調整を実行して結果が似ていました。vmlinuz.efiEFIシェルを介して実行しようとするたびに、コンピュータはエラーメッセージなしで永久にフリーズしました(これは通過するときも同様です)。root=/dev/sda2そしてinit=/bin/init引数として)

答え1

.config黒い画面を防ぐには、カーネルでフレームバッファを有効にする必要があります。

CONFIG_FB_EFI=y
CONFIG_FRAMEBUFFER_CONSOLE=y

ありがとう深くて狭い谷彼のために回答

関連情報