UEFIブートのgrub2メモ 2016-12-05 (Mon) 22:29

BIOS(MBR)、UEFI両対応のブータブルUSBメモリ作成時の備忘録

isoファイルからのダイレクトブートに関して、grub4dosでは下記の両方で可能。

title Paragon Backup & Recovery 2014 Free WindowsPE  (Test1)
kernel /syslinux/memdisk iso raw
initrd /Paragon2014_PE.iso

title Paragon Backup & Recovery 2014 Free WindowsPE (Test2)
find --set-root /Paragon2014_PE.iso
map --mem /Paragon2014_PE.iso (0xff)
map --hook
chainloader (0xff)

一方UEFIな grub2では、memdiskは使えないようで (Test1)の方法は不可。(メモリにロード後フリーズ)

(Test2)の方法は、grub2にはmapコマンドがないので、loopbackを使って下記のようにしてみたが起動出来ない。

menuentry "Paragon Backup & Recovery 2014 Free WindowsPE (Test3)" {
set iso="/Paragon2014_PE.iso"
loopback loop $iso
chainloader (loop)
}

menuentry "Paragon Backup & Recovery 2014 Free WindowsPE (Test4)" {
set iso="/Paragon2014_PE.iso"
loopback loop $iso
set root=(loop)
chainloader (loop)/EFI/BOOT/BOOTX64.EFI
}

(Test3)はchainloaderの実行時に、'invalid file name'エラーとなる。

(Test4)は、set root=(loop)を入れないと \EFI\Microsoft\Boot\BCDを見つけられずにエラー。

とはいえ、set root=(loop)を入れると chainloader 実行時に 'not a valid root device'エラー。

結局UEFIなgrub2でWindowsPEのisoを起動するには、プライマリ(拡張だとダメ *1)パーティションに解凍して、

menuentry "Paragon Backup & Recovery 2014 Free WindowsPE" {
insmod search_label
insmod chain
search --no-floppy --set=root --label Paragon
chainloader /EFI/BOOT/BOOTX64.EFI
}

こんな感じで起動するしかなさそう。

*1) 拡張パーティションだと、ルートをそこに設定して chainloader実行する際に 'not a valid root device'エラーとなってしまう。

MBRでしかブート出来ないマシンを弄ることもないだろうから、GPT形式でフォーマットしてUEFIブートオンリーにしても良いのかも。

MBR形式だとプライマリパーティションは4つしか作れないので、isoファイルからダイレクトに起動できないとちょっと厳しい。
関連記事

コメントの投稿

管理者にだけ表示を許可する

注意事項
基本的にこのブログはブログ主の備忘録です。

ブログの内容にはブログ主の主観や時には正確でない情報が含まれていることもあります。書いてある内容がすべての環境にあてはまることを保証するものでもありません。
また過去の記事の情報はそれが参照された時点では既に陳腐化していることもあります。

その辺をご理解の上で当ブログ内に書いてあることを試す場合は自己責任でお願いします。

万一何らかの損害が生じても責任は持てませんのであしからず!

記事内容の誤りの指摘、疑問点の回答などコメント頂けると助かります。
カレンダー
04 | 2017/05 | 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -
ブログ内検索
カラーコードチェッカ
カラーコードの確認
入力例) #ffffff | blue
カテゴリ
最新記事
最新コメント
最新トラックバック
リンク
ブロとも申請フォーム

この人とブロともになる

メールフォーム

名前:
メール:
件名:
本文: