Make a bootable Windows 10 USB installer on a Mac
Trust me, I’ve tried them all (dd
, etcher, unetbootin, etc) and this is the only way that works, but you must have formatted your USB stick with NTFS. See below for how to format a disk with NTFS natively on MacOS.
2022 MacOS Monterey update: this will crash your Mac :( The experimental writable support for NTFS seems to have gotten a lot worse.
Mounty does work and didn’t crash for me; perhaps mounting inside your home directory, rather than on /tmp like I was below, makes a difference?
# Cribbed from Josh Beam
# https://joshbeam.com/2017/11/23/making-a-bootable-windows-10-usb-drive-on-macos-high-sierra/
# Mount the iso which you can get from
# https://www.microsoft.com/en-gb/software-download/windows10ISO
hdiutil mount ~/Downloads/Win10_20H2_v2_English_x64.iso
# Copy the iso contents to the USB stick;
# this assumes it's mounted at /Volumes/WINDOWS10
cp -vrp /Volumes/CCCOMA_X64FRE_EN-US_DV9/* /Volumes/WINDOWS10
This will boot, but then fail unless you have an NTFS formatted USB, because it couldn’t find C:/install.wim
which is larger than 4GB, which is the max filesize possible with FAT32.
I tried formatting the USB exFAT instead of FAT32 format… The exFAT formatted USB won’t boot.
So that just leaves NTFS, which I initially couldn’t create on MacOS.
I did that on a Linux box, and then, because I wanted to see if it would work, I mounted the NTFS drive with writable permissions using the Mac’s experimental NTFS support (this is now over 7 years old, so you’d imagine a bit more stable than the term suggests):
# Make the mount point
mkdir /tmp/WINDOWS10
# Mount the USB stick with read/write options,
# but check via "diskutil list" for the exact device number
sudo mount -o rw,auto,nobrowse -t ntfs /dev/disk2s1 /tmp/WINDOWS10
# Copy the files
cp -vrp /Volumes/CCCOMA_X64FRE_EN-US_DV9/* /tmp/WINDOWS10
That worked. I could boot from the USB and the install went ahead without any moans about install.wim
.
Format a USB stick with NTFS on a Mac
So the last piece of the puzzle is to figure out how to format NTFS natively on Macos. You need Homebrew, macFUSE and NTFS-3G:
brew install macfuse
brew install ntfs-3g
# Check which device your USB stick is, using "diskutil list"
# before you run this
mkntfs --fast -L WINDOWS10 /dev/disk2
All links, in order of mention:
- dd: https://ss64.com/osx/dd.html
- etcher: https://www.balena.io/etcher/
- unetbootin: https://unetbootin.github.io/
- this is the only way that works: https://www.joshbeam.com/2017/11/23/making-a-bootable-windows-10-usb-drive-on-macos-high-sierra/
- how to format a disk with NTFS natively on MacOS: #format-a-usb-stick-with-ntfs-on-a-mac
- Mounty: https://mounty.app
- mounting inside your home directory: https://mounty.app#aBitOfBackground
- Homebrew: https://brew.sh/
- macFUSE: https://osxfuse.github.io/
- NTFS-3G: https://github.com/osxfuse/osxfuse/wiki/NTFS-3G
Recent posts:
- Patch for aarch64 (aka arm64) openssl 1.0.2 'relocation R_AARCH64_PREL64 against symbol OPENSSL_armcap_P error'
- TIL: the `NO_COLOR` informal standard to suppress ANSI colour escape codes
- Copy the contents of a branch into an existing git branch without merging
- Adding search to a static Jekyll site using pagefind
- asdf, python and automatically enabling virtual envs