ISO がハイブリッドかどうかを判断するにはどうすればよいですか?

ISO がハイブリッドかどうかを判断するにはどうすればよいですか?

これによれば: http://en.wikipedia.org/wiki/ISO_image#説明

「最近の例としては、イメージがいずれかのストレージ デバイスに書き込まれると、BD または DVD と USB フラッシュ ドライブ デバイスの両方から起動または開始できるハイブリッド ISO ファイルのリリースがあります。」

標準の Linux ツールを使用して、ダウンロードした (編集: または genisoimage で作成した) ISO がハイブリッドであるかどうかを判断するにはどうすればよいですか?

ありがとう!

答え1

ファイルに対して fdisk を実行します。何か意味のある結果が表示された場合は、ハイブリッドです。

答え2

問題のISOイメージでコマンドを実行しますfile。このコマンドを非ハイブリッドISOで実行した場合の出力は次のようになります。

image.iso: ISO 9660 CD-ROM filesystem data 'foo' (bootable)

ハイブリッドISOでこのコマンドを実行した場合の出力は次のようになります。

image.iso: DOS/MBR boot sector ISO 9660 CD-ROM filesystem data (DOS/MBR boot sector) 'foo' (bootable); partition 1 : ID=0x17, active, start-CHS (0x0,0,1), end-CHS (0x288,63,32), startsector 0, 1329152 sectors

答え3

このスクリプトを使用して ISO イメージをチェックできます ( -i「検査」のフラグ)

https://github.com/jsamr/bootiso

bootiso -i "your iso image"

ISO イメージから USB ブート可能デバイスを簡単かつ安全に作成します。

dd コマンドでシステムを台無しにしたくないですか? 1 行で ISO から起動可能な USB を作成します [動作を確認してください]。

あらゆる Linux ISO、Windows ISO、UltimateBootCD などのレスキュー ライブ CD など、ハイブリッドおよび非ハイブリッド ISO (SYSLINUX または UEFI 準拠) とシームレスに動作します。何も調整する必要はありません。bootiso は ISO ファイルを検査し、USB を起動可能にする最適な方法を選択します。

答え4

これは、非ハイブリッド ROM メディアには存在しないパーティション テーブルを検出します。

cat romdisk.iso 2>/dev/null | head -c 512 | tail -c 2 | xxd -p | grep -ie '55aa$'

ハイブリッド ISO とハードディスク イメージの区別方法がわかりません。

cat disk.img 2>/dev/null | head -c 512 | hexdump -vC

関連情報