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.
# 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
Format a USB stick with NTFS on a Mac
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
- 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