Grub2 UEFIでlinux16 / initrd16を使用してMemdiskをロードする

Grub2 UEFIでlinux16 / initrd16を使用してMemdiskをロードする

UEFIモードのGrub2からMemdiskカーネルをロードする必要があります。

これが可能かどうかはわかりませんが、予期しない不明なエラーが発生します。

可能かどうか、可能であればどうするかを知りたいです。

私のGrubメニュー項目/コマンドは次のとおりです。

menuentry 'Hirens Boot 15.2' { 

  search --no-floppy --fs-uuid --set=root 3a02381a-2bf7-4730-8e13-6d7640f9c60e
  set iso_path="/isos/Hirens.BootCD.15.2.iso"
        
  loopback loop ($root)$iso_path
      
  linux16 (loop)/HBCD/Boot/memdisk iso
  initrd16 /isos/Hirens.BootCD.15.2.iso
     
  }

BIOSモードでは、同じメニュー項目が問題なく実行されます。

答え1

私はこれがうまくいかないと思います。

Hirens Boot CD 15.2は2012バージョンです。当時、UEFIはPCの世界に導入されたばかりで、ほとんどのブート可能なツールは依然として従来のBIOS操作方法を使用していました。

このmemdiskユーティリティは、以前のBIOSバージョンのディスクアクセス機能を提供し、RAMベースのディスクイメージで使用できるように拡張できることを願っています。 UEFIモードで起動されたシステムでは、これらの既存のBIOSディスクアクセス機能はまったく使用できません。実際、システム全体は、サポートされている以前のDOS互換の16ビットモードではなく、64ビットまたは32ビット保護モードで実行されます。 BIOSによって。ブートローダベースの起動。

memdiskオリジナル出身Syslinuxブートローダプロジェクト、リンクされたWebページには次のように表示されます。

MEMDISKは、ディスク用の高メモリブロックとドライバ自体の低(通常2K)メモリブロック(非常に小さい - 通常2K)を宣言し、INT 13h(ディスクドライバ)とINT 15h(メモリ)にフックしてディスクをエミュレートします。します。 )クエリ)BIOS割り込み。

UEFIモードでは、低/高メモリおよびBIOS割り込みINT 13hおよびINT 15hなどのDOS / BIOSの概念が適用されないため、これをmemdisk行うことはできません。

操作を開始できますが、memdiskHirensブートCDイメージで使用されるWindows PE環境用のブートローダーには従来のBIOS環境が必要で、UEFIモードで起動するシステムでは起動しない可能性があります。私が知っている限り、GRUBまたは他のブートローダがシステムをUEFIモードからレガシーBIOSモードに、またはその逆に切り替える標準的な方法はありません。

関連情報