はじめに
今回はLinuxの記事です。こちらの記事を参考に、特殊なツールやアプリケーションを使わずに、Windows10のインストール用USBメモリを作成します。作業自体はGentoo/Linux上で行いましたが、別のディストリビューションでも大枠は変わらないはずです。事前に次の2つを用意しておきます。
- 8GB以上のUSBメモリ
- Windows10インストールISOイメージ
USBのパーティション準備
USBメモリには2つのパーティションを切ってそれぞれデータを入れます。記事中では対象デバイスが /dev/sdb ですが、環境によって異なるのでdmesg等で確認してください。
- EFIブート用、FAT32でフォーマットする。1GBくらい。
- インストールデータ用、NTFSでフォーマットする。残り全部。
sudo parted /dev/sdb
GNU Parted 3.2
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
Warning: The existing disk label on /dev/sdb will be destroyed and all data on
this disk will be lost. Do you want to continue?
Yes/No? Yes
(parted) mkpart
Partition name? []? UEFI_Boot
File system type? [ext2]? fat32
Start? 0G
End? 1G
(parted) mkpart
Partition name? []? Win10
File system type? [ext2]? ntfs
Start? 1G
End? 100%
(parted) print
Model: TOSHIBA USB FLASH DRIVE (scsi)
Disk /dev/sdb: 15.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 1000MB 999MB fat32 UEFI_Boot
2 1000MB 15.5GB 14.5GB ntfs Win10
(parted) quit
Information: You may need to update /etc/fstab.
パーティションが作成できたらそれぞれフォーマットします。
sudo mkfs.vfat /dev/sdb1
sudo mkfs.ntfs -f /dev/sdb2
インストールファイルのコピー
Windows10のインストールISOイメージをloopbackでマウントし、必要なファイルをUSBメモリの各パーティションにコピーします。ISOイメージはiso9660ではなくudfでマウントしましょう。ここでは、/tmp/work/{uefi_boot,win10,loop}の3つのディレクトリを作成し、それぞれマウントしています。
mkdir -p /tmp/work/{uefi_boot,win10,loop}
sudo mount -t udf -o ro,loop ~/Downloads/Win10_2004_Japanese_x64.iso /tmp/work/loop
sudo mount -t vfat /dev/sdb1 /tmp/work/uefi_boot
sudo mount -t ntfs /dev/sdb2 /tmp/work/win10
マウントできたら、まずはUEFI用パーティションへ必要なデータをコピーします。
sudo cp -r \
/tmp/work/loop/{autorun.inf,boot,bootmgr,bootmgr.efi,efi,setup.exe,support} \
/tmp/work/uefi_boot
sudo mkdir /tmp/work/uefi_boot/sources
sudo cp -r /tmp/work/loop/sources/boot.wim \
/tmp/work/uefi_boot/sources/boot.wim
データ用パーティションへも、同様に必要なデータをコピーします。
sudo cp -r /tmp/work/loop/sources /tmp/work/win10
コピー終了後、syncを叩いて書き込み終了まで待ちます。
sync
USBメモリへのデータコピーが完了したら、アンマウントして使用したディレクトリを削除おきましょう。
sudo umount /tmp/work/{uefi_boot,win10,loop}
rmdir /tmp/work/{uefi_boot,win10,loop,}
これでWindowsインストール用のUSBメモリができました。