Linux で起動可能な Windows 8 ISO イメージを作成する方法は?

Linux で起動可能な Windows 8 ISO イメージを作成する方法は?

ISO を自動的にインストールするには、ファイルを Windows 8 ISO イメージに挿入する必要がありますAutounattend.xml。私のシステムは Linux 上で実行する必要があり、Linux シェル コマンドしか使用できないため、UltraISO などの Windows 上の ISO ツールは使用できません。

いくつかの方法を試しましたが、作成したISOはすべて起動できず、印刷するだけでした

CDBOOT: Cannot boot from CD - Code: 5

A. 最初に試した方法は次のとおりです。トゥト

  1. isoをフォルダにマウントする
  2. マウントされたISOコンテンツを新しいフォルダにコピーします
  3. 新しいフォルダにファイルを追加する
  4. コマンドを使用してmkisofs新しいISOイメージを作成する

    mkisofs -o windows2008_new.iso -b boot/etfsboot.com -no-emul-boot   -boot-load-size 8 -boot-info-table  -V -J -l -D -N -UDF  -relaxed-filenames -V "WINSP"
    

B. 私が試した2番目の方法:

Windows 上で「oscdimg」という MS cmd ツールを使用して新しい Windows iso を作成すると、動作します。そこで、oscdimg を Linux にコピーし、Wine を使用して実行しましたが、正常に実行できません。

純粋なシェルコマンドを使用して Linux で起動可能な Windows ISO イメージを作成する方法を知っている人はいますか?

答え1

私はgenisoimagemkisofs の Debian フォーク)。

方法:

  1. ISOをループバックマウントする

    mount -o loop <image>.iso /mnt/iso
    
  2. 読み取り/書き込みアクセス用にセカンダリフォルダにコピーする

    cp -R /mnt/iso/ /mnt/iso2
    
  3. 変更を加える

  4. genisoimage -b <relative boot-img path> -no-emul-boot -boot-load-size 8 -iso-level 2 -udf -joliet -D -N -relaxed-filenames -o <new-image>.iso /mnt/iso2.`
    

答え2

Windows 7用の提案された方法ですが、Windows 10のISOファイルでは機能しません

# https://rwmj.wordpress.com/2010/11/04/customizing-a-windows-7-install-iso/
$ dd if=../en_windows_10_x64_dvd.iso \
    of=boot.img bs=2048 count=8 skip=734

$ mkisofs -o ../new-win.iso -b boot.img -no-emul-boot -c BOOT.CAT \
    -iso-level 2 -udf \
    -J -l -D -N -joliet-long -relaxed-filenames .

最初のステップで出力に失敗しました

dd if=/home/masi/Downloads/en_windows_10_multiple_editions_version_1511_x64_dvd.iso of=/home/masi/Downloads/boot.img bs=2048 count=8 skip=734
8+0 records in
8+0 records out
16384 bytes (16 kB) copied, 0.000392973 s, 41.7 MB/s

このタスクに対する新しい方法を見つけたら、ぜひ教えてください。

OS: Debian 8.5 64 ビット
ハードウェア: Asus Zenbook UX303UA
対象ハードウェア: Asus PC

答え3

私は同じことをしたかったのですがei.cfg、次のようにしました。

まずマウントポイントを作成します。

mkdir -p /mnt/image

公式の Windows イメージを次の場所にマウントします/mnt/image

sudo mount -o loop Win10_2004_English_x64.iso /mnt/image

/tmp/bootableWinループ マウントは編集できないため、ISO フォルダー構造を尊重して、変更用に別のディレクトリを作成します。

私の場合:

mkdir -p /tmp/bootableWin/sources
sudo tee /tmp/bootableWin/sources/ei.cfg <<EOF
[チャネル]
小売り
終了

最後にパッケージ化します。

mkisofs \
    -isoレベル4 \
    -l \
    -R \
    -UDF \
    -D \
    -b ブート/etfsboot.com \
    -エミュルブートなし\
    -ブートロードサイズ 8 \
    -boot.catalog を非表示 \
    -eltorito-alt-boot \
    -eltorito-プラットフォーム efi \
    -エミュルブートなし\
    -b efi/microsoft/boot/efisys.bin \
    -o /ホーム/ユーザー名/win10-出力イメージ.iso \
    /mnt/イメージ /tmp/bootableWin/

これで、追加したファイルを含む BIOS と UEFI の起動可能なイメージの両方が作成されます。

関連情報