Bootcamp from external SSD with EFI
There seems to be a lot of tutorials about this subject on the web. But they never seems to work correctly. I always ended up with different issues. After a whole day of trail and error I came up with this guide.. and this one DOES work with modern Macs using EFI.
- An external SSD (duh..)
- External mouse and keyboard (usb)
- USB Stick with at least 1GB free and readable by Windows Computers
- Download and Install VirtualBox (it's opensource and free)
- Download a Windows 10 ISO from microsoft.com
Step 1: WindowsSupport
Plugin your USB Stick and start te 'Boot Camp Assistant' App. Ignore the main window and just select 'Download Windows Support Software' from the Action menu.
When the download is complete move the WindowsSupport folder to the USB Stick.
Step 2: Erase SSD
Plugin your external SSD and open the 'Disk Utility' App.
Erase the whole SSD and create one big MS-DOS (FAT) partition with MBR like this:
Step 3: Disk number
Open the 'Terminal' App and type the command
diskutil list, a list of disks will appear.
Here is an example (the disk number can differ for you):
Search for the 'UNTITLED' label and double check the size of the disk. If you are sure this is your connected SSD then make a note of the /dev/diskX where X is the number of the external SSD.
Step 4: VirtualBox Rawdisk
Now make sure the SSD is not mounted, eject the ssd, but do not disconnect the disk from your mac.
Go to the 'Terminal' App and type the following command:
sudo VBoxManage internalcommands createrawvmdk -filename "bootcamp.vmdk" -rawdisk /dev/diskX
Where X is the number you noted in the previous step. You will need to enter your password because of the system rights needed to access the disk.
If you get an error make sure you unmounted the disk.
Step 5: Configure VirtualBox
Now type the following command to start 'VirtualBox':
Again, your password is needed. Don't start VirtualBox through the launcher because you need these admin rights to access the disk.
When launched create a new virtual machine and give it the name 'Windows 10'.
Keep the memory on the default 2048 MB and select the existing virtual hard disk file created in the previous step.
When finished you will return to the overview. Now click on Settings and go the the System tab and check the Enable EFI checkbox.
Next go to the Storage tab and click on the cdrom in the devices list followed by clicking on the small cd-icon next to the optical drive: selection box. Browse to the windows 10 .iso you downloaded form microsoft.com and click on OK.
Step 6: Install Windows 10
On the VirtualBox overview click on the Start button. You will see a quick 'Press any key to boot from CD or DVD...' so press a key and you will boot into the windows 10 installer.
If you didn't pay attention and end up in the EFI shell just restart the VM and try again.
In the installer just follow the install wizard with your prefs and when prompted choose the Custom installation (second option).
Now you will need to 're-partition' the ssd, just delete the only visible partition and click on new. You will end up with this:
Click Next and wait untill the install is finished.
Step 7: IMPORTANT! Prevent Restart
When the installation is finished you will need to restart but prevent VirtualBox from actually restarting, thus you will need to manually shutdown VirtualBox on restart.
When you see this screen click on the restart button and wait for the VirtualBox Bootscreen.
When you see this screen click on the red button (close the window) and select 'Power Off the machine':
Step 8: Boot into Windows!
Now just reboot your Mac and keep the left Alt / Option key pressed to get to the Volume selection screen.
Sometimes it is hard to get the timing right and you will boot into macOS.
Just restart again and keep the 'alt / options' key pressed until you see the boot menu.
On this menu select the EFI Volume. Voila, Windows 10 will continue the installation! We are Done... uh..
Step 9: Bonus!
Your keyboard and trackpad will probably not work because Windows does not have the appropriate drivers yet.
So you will need to attach an external mouse and keyboard to continue the installation.
When Windows 10 is setup you can plugin your USB-stick with the WindowsSupport files and start the bootcamp installer in windows.
The bootcamp software will install all kinds of drivers (keyboard, touchbar, touchpad, wifi, display drivers etc..).
Now you are really done!