If you search “how to install Windows 10 on USB” on google, google will return all results about how to install Windows 10 from USB. Yes, google becomes more and more stupid since chatgpt becomes popular. I know how to create a Windows 10 installation media on USB and install Windows to an internal HDD from the USB. But what I really want is to install Windows 10 onto a usb drive, a thumb drive or an external hdd connected to my computer through USB port. Installing Windows 10 to an external USB is forbidden by official Windows 10 installation program. You’ll see the following error:
Windows cannot be installed to this disk. Setup does not support configuration of or installation to disks connected through a USB or IEEE 1394 port.
Windows cannot be installed to this disk. This computer’s hardware may not support booting to this disk. Ensure that the disk’s controller is enabled in the computer’s BIOS menu.
This is ridiculous. Somebody argues that Microsoft does this because it does not want the low speed of USB degrades the performance of Windows. But actually the transfer speed of USB3.0 of the external HDD exceeds the transfer speed of internal SATA HDD.
Anyway, you must find a workaround to install Windows onto the external HDD. Here is the solution:
- download Windows MediaCreationTool
- run the downloaded .exe file(MediaCreationTool does not need an installation, just double-click on it to run)
- At the “Choose which media to use” step, choose “ISO file” option instead of the “USB flash drive” option.
- The result is MediaCreationTool generates a Windows.iso file
- run rufus. Interestingly, this program does not need installation either. Just double-click it to run.
- Now, the important action is clicking “Show advanced drive properties” and tick “List USB Hard Drives” if you want to install Windows 10 on USB hard disk. Otherwise, the Device drop-down list will be empty and the Start button will be greyed out.
- After enabling “List USB Hard Drives”, you’ll see your external hard drive in the Device Box.
- Select the Windows.iso image you created with MediaCreationTool.
- In the “Image option” drop-down list, select “Windows To Go” instead of the default “Standard Windows Installation”. Otherwise, what are burned into the USB are the installation files of Windows 10, not Windows 10 itself.
- Click “START” and you are provided with the options of Windows versions(Windows 10 Home, Windows 10 Education, Windows 10 Pro, etc.). Select an option and click start to burn Windows 10 iso to the external USB HDD.
If you chose “Partition scheme=GTP” and “Target system=UEFI (non CSM)” in Rufus when installing Windows 10 onto USB, you can only boot the usb in UEFI mode. If you try to boot it in legacy BIOS mode, you will get the error:
This drive was created by Rufus.
It can boot in UEFI mode only but you are trying to
boot it in BIOS/Legacy mode. THIS WILL NOT WORK!
If you need to boot the USB in BIOS mode, you should choose “Partition scheme=MBR” and “Target system=BIOS(or UEFI-CSM)” in Rufus when installing Windows 10 onto USB.
In GPT scheme, Rufus creates 3 partitions for the USB: a EFI system partition(P:), a raw reserved partition, and a main data partition storing Windows 10(Q:). If you run the following command to change the boot files from P: to Q:
bcdboot Q:\Windows /s Q: /f ALL
The usb can still be booted in UEFI mode but cannot boot in BIOS mode.
If you convert the USB from GPT to MBR using a third-party tool, and set Q: to active, the usb cannot be booted in BIOS mode.
If you run bcdboot P:\Windows /s P: /f ALL and set P: to active, the usb cannot be booted in BIOS mode.
If you use win7 MBR boot code instead of the Rufus MBR boot code now, the usb cannot be booted in BIOS mode, but you can see the cursor blink on the black screen meaning the win7 MBR boot code is executed successfully but can not find the following windows boot code.
If you use win7 MBR boot code and set Q: to active and boot the usb in BIOS mode, you can see the blue-screen complaining “cannot find \Windows\system32\winload.exe”.
You should run bcdboot Q:\Windows /s Q: /f ALL again to fix the problem.
Now, you should be able to boot the usb in BIOS mode.