Creating a BIOS and EFI bootable USB drive from a Windows 10 / 8.1 ISO image

I'm using Linux (Ubuntu Zasty 17.04).

The 10+ "solutions" I found on various places don't work.

What I've done:

  • Create and MBR partition table on the USB drive
  • Create a single, active partiton across the whole drive
  • Set type to 0xb "W95 FAT32"
  • Format the partition "mkfs.vfat /dev/sdb1"
  • Mount the installer iso and USB drive, copy all files, umount.

What works: - Booting with EFI works perfectly

What does not: - Booting with BIOS.

Obviously. No MBR was set up at this point so BIOS does not know how to boot.

Tried:

  • Installing MBR with LILO (How the MBR code should know what to boot anyway?)
  • Tried installing syslinux MBR (kinda the same)
  • Booting the iso with "kvm -m 2048 -cdrom [path to iso] -hda /dev/sdb" and:

  • ...trying to fix the boot record automatically on the USB drive

  • trying to fix it manually with bootrec.exe
  • (Found out bootrec /ScanOs can't even see bootable windows systems)
  • manually creating a new BCD, adding bootmgr and osloader

Could not figure out what root and path to use so this is obviously wrong, but I hope it can be fixed somehow.

At this point the windows bootloader starts just fine, but it - of course - can't start the system, because there isn't a \Windows directory on the drive, so the default path and root does not work.

So the question is:

  • Can the windows boot loader be made to start the windows installer this way?
  • If not, how can I make this drive bootable with BIOS?

Thank you for the answers in advance.

3 Answers

@netom,

What you have done so far (formatting, partitioning, copying) is OK.

What you need:

Windows MBR(Master boot record) and Windows PBR (partition boot record).

Windows boot sequence:

BIOS loads MBR, MBR loads PBR of active, PBR loads Windows boot manager from active (file \bootmgr) and so on.

Distributions BCD's(for UEFI and BIOS) have already default boot entries which are "universal" (e.g. they expect all necessary boot executables to be on "boot device" in standard folders/directories).

You need a Linux tool to write Windows 7/8/10 boot sectors.

see also Fix Windows boot - last paragraph - Manual Windows boot repair.

4

I have found a tool called Rufus(Official Site). It is used to make bootable USB drive for Windows installer.
I'll update this answer later after I try it on my virtual machine.
EDIT: I failed to create a bootable ISO with Rufus. I don't know if Rufus is unable to do so, or if the virtual machine prevents bootable USB disk from booting. I don't know why you need a BIOS bootable USB drive as EFI is bootable.
EDIT: I don't know if you know some Chinese, but there are a lot of bootable USB tools in China. The most famous ones are Dabaicai (big Chinese cabbage), Laomaotao (old furry peach), and so on. They have no English versions yet, but they can really create bootable USB drives capable of booting from both BIOS and EFI.
I have also noticed there are boot CDs like Hiren's BootCD. It's an English PE system. It can be burnt into a USB drive. Maybe you can boot from PE systems first, then run Windows 10 installer from it. At least most Chinese install OS in this way.

5

Another site stated that the FAT partition should be type 0xc rather than 0xb. And Rufus has a hidden-and-not-enabled-by-default feature of creating BOTH UEFI+BIOS bootable usb by pressing Alt-E.

However, the method used by Rufus can also be done manually.

  1. Create two partitions on the USB drive, in which:
    • First partition: NTFS
    • Second/last partition: FAT32
  2. Copy *.efi boot files for UEFI to the FAT32 partition (Explanation: UEFI firmware doesn't need a MBR, but will scan the drive for a FAT32 partition that contains *.efi files)
  3. Install boot files for BIOS and copy all content of the installation media disc to the NTFS partition (Explanation: BIOS will read the MBR on first sector of the drive which in turn will run the boot loader on 1st active partition which is the NTFS partition).
  4. The important secret here is to copy the boot folder and efi folder from media disc to both partitions.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like