There are a couple guides out there describing this process, yet I could not find one that was applicable to the current macOS versions and hardware.
I myself am the lucky owner of a 2019 16″ Macbook Pro and finally got Windows 10 to work on an external drive (HDD in my case, but the instructions should just as well work for SSD)
Prerequisites
- 1 external device (4 GB USB stick is fine) for the Apple Boot Camp Software
- 1 external SDD/HDD with a minimum of 256 GB of storage
- Backup all files on both devices since they need to be reformatted
- USB keyboard and mouse (might be optional, I needed this for the final parts of the Windows setup before the touch-pad and mac keyboard worked again)
- Windows 10 ISO and license
- Be okay with loosening some of macOS? security settings. This will be required for any Mac equipped with a T2 Chip.
- ca 30 minutes to spare
Preparing the USB stick (Support Software)
Open Disk Utility and select the USB stick on the left. In order to see all options and be able to select the device directly and not the partitions, you might need to activate the advanced view, clicking on (you guessed it) View.
You need to make sure you select the drive root and not one of the partitions (e.g. VOLUME is a partition here)
Select the drive and click Erase.
Make the USB stick work with macOS and Windows
Selection the options in the picture start the process (all device data will be lost).
Now start the Boot Camp Assistant, and choose Action from the menu bar, then Download Windows Support Software
Download Bootcamp support software to an empty USB stick
Follow the instructions and download the support software to the USB stick. Done for now, set it aside for later 🙂
Installing VirtualBox
We will use VirtualBox in order to install Windows (within macOS). The software is free (and great)!
Downloads – Oracle VM VirtualBox
Here you will find links to VirtualBox binaries and its source code. By downloading, you agree to the terms and?
www.virtualbox.org
Download and install the latest package. After that we are ready to continue.
Clarification: We are using VirtualBox to compensate for the lack of a physical computer running Windows. We are not using the virtual machine for anything other than the installation process and it can be uninstalled from macOS after everything is done. The final product will be Windows running natively on your mac from an external drive.
Preparing the USB HDD/SSD Windows 10 Drive
Now to the main drive. This is where the older guides diverge. Plugin the drive and head once again to Disk Utility.
Select the drive the same way as the USB stick prior and click Erase. Now instead select the following:
We select GUID Partition Map instead of MBR in order to get this UEFI ready
Next eject the newly formatted drive via Disk Utility or Finder, but leave it plugged in of course. Open a Terminal window and type?
diskutil list
Identify the drive you just formated and make note of the number behind ?disk? in my case disk2, don?t worry if your list looks different otherwise
For the sake of this article, I am going with disk2 and trust that you change the number according to your setup.
sudo VBoxManage internalcommands createrawvmdk -filename bootcamp.vmdk -rawdisk /dev/disk2
The command above will create a drive reference for VirtualBox that is pointing to the SSD/HDD we prepared for the installation earlier.
NOTE: This command will fail if you forgot to eject the drive earlier.
Once the command is done, a new file called bootcamp.vmdk will be located in your user home directory. This usually mounts the drive again, so kick it out once more via Finder.
Next, start VirtualBox with admin rights
sudo /Applications/VirtualBox.app/Contents/MacOS/VirtualBox
Select New and setup the virtual machine selecting the bootcamp.vmdk file from earlier (if it looks different for you click on Expert Mode)
If you encounter any errors while selecting bootcamp.vmdk, make sure the USB drive it points to is ejected
Another important step follows. In order to boot from the drive we need to install Windows in UEFI mode. Select the virtual machine and go to preferences.
Select Enable EFI (special OSes only).
We also need to mount a Windows 10 ISO file to the virtual machine
Once you select the virtual machine you will find this to the right. Click on Optical Drive to select the ISO
You can get a current ISO here: https://www.microsoft.com/sv-se/software-download/windows10ISO
Now finally we are ready to start the virtual machine.
Important: You need to press a key to load from the CD as soon as the Virtual Machine starts, otherwise you will end up in a console and have to start the boot process again. (Thanks for the hint Onur Ozan Yksel!)
The windows install screen should come up. Follow the instructions and select Custom Installation. Once the drive selection shows you will need to format the second partition.
Select partition 2 and klick Format, then Next
Let the installation routine run but be on your toes!
IMPORTANT: Once the installation is done you have about 10 seconds before Windows restarts. This must not happen, otherwise you?ll have to redo this!
Click on the X and shut down the virtual machine (last of the choices). While this is time critical 10 seconds is more than chill (took me like 2s). Close VirtualBox, you are done with this step!
Booting from the drive and finishing the installation.
Now we are ready to boot from the drive. Restart your Mac and press the Option key right after the Apple Logo appears. This takes you to the startup disk selection screen. (https://support.apple.com/en-hk/HT202796)
The drive that you are looking for is labeled EFI. Try booting from it first.
Now, I was not able to boot from this drive at all with Catalinas default security settings (Secure Boot, https://support.apple.com/en-me/HT208330)
I had to decrease the Security level (No Security) and allow booting from external media. The linked article above lists the steps:
- Turn on your Mac, then press and hold Command (?)-R immediately after you see the Apple logo to start up from macOS Recovery.
- When you see the macOS Utilities window, choose Utilities > Startup Security Utility from the menu bar.
- When you?re asked to authenticate, click Enter macOS Password, then choose an administrator account and enter its password.
I understand that this might be an issue for you, but I could not get this to work any other way. I was not able to increase the security level again after the installation was done (let me know if you know how this could be achieved)
After you have changed this, you should be able to finish the installation process by booting from the EFI disk. You probably need to do an offline installation first. (I needed to attach a USB-keyboard and -mouse until the installation was done).
Install Boot Camp Support Software
Once Windows has started, you can attach the USB-drive you prepared earlier and install the Boot Camp software. This should make all hardware work properly and you can now work online, update and live happily ever after.
Refer to this in order to switch between Windows and macOS in the future.
Switch between Windows and macOS
Press and hold the Option key during startup, then choose your Windows or macOS startup disk. Restart your Mac, then?
support.apple.com
I hope this worked for you!