I'm trying to install Windows 8 through a bootable USB flash drive, in UEFI Mode. However, while it does work when the drive is formatted as FAT for some versions of Windows 8, the version I want to install has a install.wim file bigger than 4Gb, so I have to use an NTFS file system on the flash drive, but I cannot boot in UEFI mode from it. In both cases I use a GPT partition table. Is booting from NTFS not possible in UEFI mode (strange, as is the file system used by Windows) or am I doing something wrong?
From the Wikipedia article on UEFI:
The UEFI specification explicitly requires support for FAT32 for system partitions, and FAT12/FAT16 for removable media; specific implementations may support other file systems.
Personally I've yet to encounter any motherboard manufacturer who has implemented NTFS boot support in their UEFI modules.
Update: As mentioned in the comments below, two years after I posted the above there are now at least a few motherboards available with UEFI NTFS modules.
The latest version of Rufus allows seamless UEFI boot from an NTFS partition.
If you select a Windows installation ISO, set the partition scheme to
GPT partition scheme for UEFI computers and also set the file system to
NTFS, Rufus will add everything required to allow booting NTFS partition from an UEFI system.
Outside of using Windows installation media, you can also create a "blank" NTFS bootable UEFI drive when running Rufus in advanced mode (enabled by clicking the while triangle near
Format Options) by selecting
UEFI:NTFS as the boot option. In this case, you will just have to copy an
/efi/boot/bootia32.efi on the NTFS partition for your system to boot from NTFS.
The way it works is by adding a small (256KB) FAT partition at the end of the drive that contains am EFI executable that loads a Free Software (GPLv3) NTFS EFI driver and hands over the boot to the regular EFI bootloader on NTFS partition. This allows the installation of Windows media that contain an
install.wim larger than 4GB and other stuff...
For more on this see the UEFI:NTFS project on github.
[Disclaimer: I am the author of Rufus and UEFI:NTFS]
First, what reads the
install.wim file you mention? If it's read after the Windows kernel has taken control of the system, it shouldn't be necessary to put the file on the EFI System Partition (ESP), which must be FAT. Once the Windows kernel has loaded (and loaded its filesystem drivers, if they're in separate files), Windows should be able to read NTFS volumes just fine. My suspicion is that this is how it works; however, I don't know enough about the Windows installer to suggest how to point it to
install.wim on a specific partition.
install.wim must be read while the EFI is still running, there may be a way to do it. The Clover EFI Tools package (available from this forum thread) includes an NTFS driver for EFI; however, I don't know the provenance of that driver, so I'm providing this pointer only reluctantly. To use it, you'd need to either load it manually from an EFI shell or use rEFInd to launch it automatically. I can't offer any specific advice on how to partition your disk or get the Windows installer to launch and recognize the files on the NTFS volume.
It's conceivable you could get it to work with another filesystem, too. rEFInd includes drivers for ReiserFS, ext2fs, ext3fs, and HFS+, all of which support over-4GiB files. The trouble, of course, is that Windows doesn't support these filesystems, so once Windows takes over, it would lose access to those files. Creating two partitions -- one with a Linux or OS X filesystem and one with NTFS -- and putting identical files on them might be a workaround.
Creating GPT partition is correct, there have to be 2 partition. The 1st partition is FAT with rEFInd, the 2nd partition is your NTSF. Since 2012, rEFInd released NTFS driver, for which it can scan any directory inside a NTFS file system. All you have to do is pointing to the loader inside the NTFS partition
Some motherboards like my Asus P10S-WS (C236 chipset, similar to 1xx intel chipset series) contains NTFS driver in the firware but it is buggy - it has problems with parsing root directories of some ntfs drives - more details of this bug in my notes about windows10 installation
However the bug has a simple&stable workaround - just use another system from create 5 empty folders in drive’s root with names starting with $ of maximal length:
$EFI_NTFS_DRIVER_FIX_FOLDER_WITH_LONGEST_POSSIBLE_NAME1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 $EFI_NTFS_DRIVER_FIX_FOLDER2WITH_LONGEST_POSSIBLE_NAME1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 $EFI_NTFS_DRIVER_FIX_FOLDER3WITH_LONGEST_POSSIBLE_NAME1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 $EFI_NTFS_DRIVER_FIX_FOLDER4WITH_LONGEST_POSSIBLE_NAME1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 $EFI_NTFS_DRIVER_FIX_FOLDER5WITH_LONGEST_POSSIBLE_NAME1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
This rebuilds the root folder record and buggy UEFI ntfs driver now sees the /EFI subfolder and adds the variant to the system boot menu!
I bumped into the same problem on a Lenovo T430s laptop. Its firmware refuses to boot from a NTFS formatted partition created by Microsoft Windows Download Tool.
Fortunately it is very simple to create a bootable FAT32 Windows installation USB disk and the best of it no tools are needed other than a working windows system already has, namely diskpart and explorer.
You can find the instructions in http://www.eightforums.com/tutorials/15458-uefi-bootable-usb-flash-drive-create-windows.html. Make sure to scroll to Option 2. It only uses diskpart and explorer. To sum it up: it creates an active FAT32 partition on the USB drive after which copying all files and folders from the Windows installation DVD is all that is needed.
I tried to create a new FAT32 partition, then I copied modified BCD and other files into this partition (this could be done by bcdboot and bcdedit) - this worked. The first partition uses exFAT. Since Windows won't mount the second partition, you may need some tricks like microdrive driver (Removable USB Flash Drive as Local Disk).
GPT may also work.