This article will guide you through the process of using macOS to create a USB device for the installation of Windows 11.
When installing Windows on a Dell laptop, I found that the required drivers for enabling the network device were not available, so I needed to download a driver pack and extract this on a Windows VM. Once this was done, the drivers can be copied to the same USB device, in a new folder, e.g. “delldrivers”, ready for use.
Step 1: Browse to the Windows download page.
https://www.microsoft.com/en-gb/software-download/windows11
Step 2: Scroll to the “Download Windows 11 Disk Image (ISO) for x64 devices” section and select the Windows 11 option.
Step 3: Click the “Download Now” button. Wait for the request validation to complete.
Step 4: Select the product language.
Step 5: Click the “Confirm” button. Wait for the request validation to complete.
Step 6: Click the “64-bit Download” button. The ISO file will download to the “Downloads” folder.
Step 7: Connect an empty USB stick. Note: check that the stick is empty, as any contents will be lost.
Step 8: Open Launchpad, find and open Terminal.
Step 9: Identify the storage device.
diskutil list
Step 10:
Step 11: Format the storage device (disk2) with the FAT32 file system.
diskutil eraseDisk MS-DOS WINDOWS11 MBR disk2
Step 12: Mount the Windows 11 ISO file.
hdiutil mount ~/Downloads/Win11_24H2_EnglishInternational_x64.iso
Step 13: Copy the installer files to the storage device. Exclude the install.wim file as it is too big for the FAT32 partition.
rsync -avh --progress \
--exclude=/sources/install.wim \
/Volumes/CCCOMA_X64FRE_EN-GB_DV9/ \
/Volumes/WINDOWS11
Step 14: Install Homebrew. This is required to install wimlib, which we will use to split and copy the large install.wim file.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Note: if you encounter an error (e.g. below), try removing the repo (see sudo command below) and rerunning the previous command.
==> Updating Homebrew...
fatal: ambiguous argument 'refs/remotes/origin/main': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
sudo rm -rf /usr/local/Homebrew
Step 15: Run the post-installation commands for Homebrew. These commands are shown at the end of the installation output. Your directory name will vary from /Users/john/, and also the shell if you are using zsh.
echo >> /Users/john/.bash_profile
echo 'eval "$(/usr/local/bin/brew shellenv)"' >> /Users/john/.bash_profile
eval "$(/usr/local/bin/brew shellenv)"
Step 16: Test and update the installation.
brew doctor
brew update
Step 17: Install wimlib.
brew install wimlib
Step 18: Split and copy the large install.wim file to the storage device. Be patient, as the file is around 5 GB, this may take a short while.
wimlib-imagex split \
/Volumes/CCCOMA_X64FRE_EN-GB_DV9/sources/install.wim \
/Volumes/WINDOWS11/sources/install.swm 3500
Step 19: Unmount the ISO image and eject the storage device.
hdiutil unmount /Volumes/CCCOMA_X64FRE_EN-GB_DV9
diskutil eject /dev/disk2
