> I've never seen a motherboard supporting anything else than FAT for an UEFI partition.
I've seen exactly one model line, that does support NTFS in UEFI: Intel NUCs. It was quite nice, but nobody preparing boot media can rely on the availability, as the only mandatory filesystem is FAT32.
He is wrong; UEFI does specify FAT (section 13.3). It does not prevent supporting other filesystems, as well as other partition schemes or volume formats (nothing prevents UEFI from supporting LVM, for example), but only FAT and GPT are mandatory (i.e. "must"). Thus only FAT and GPT are implemented in 100% of shipped computers.
Yes, you can get Intel NUC and yes, it does support NTFS in UEFI. It is also compliant with UEFI (i.e. "can"). But is is completely useless, if you are shipping media, that should be bootable by 100% of UEFI-using machines. It is usefull, only when you are targeting such machines specifically.
> It's a real pity everyone can't agree on a standard to replace FAT32. :(
Every OS in the universe supports UDF now, and its the only real ubiquitous non-proprietary filesystem. I use it on all external storage that I cannot guarantee will be touching Linux machines exclusively.
> They would also have to drop support for FAT32 as you pointed out.
This is a little dubious. When you load a FAT driver on a *nix system, you get the limitations of FAT. Likewise there are lots of fancy filesystem APIs in Windows that fail on a FAT volume and work on NTFS.
That said, there are a lot of quirky NTFS behaviors that are ultimately rooted in FAT. I used to get frustrated by a lot of them, then I started writing a FAT driver just for fun ... and it made sense. All the goofy things about naming start to make sense if the direntry "is your inode" and the extra space in the name is padded with spaces...
Isn't it still a default somewhere? I recently formatted a pendrive on Windows and somehow mindlessly selected FAT (and ofc had troubles down the road). I probably picked a default somewhere. And to respond your question:
>Why on earth would you do that? People have been using exFAT for many years now.
Most people have no idea what FAT is. If presented a choicee between FAT, exFAT, NTFS and ext4 I'm certain they don't care, don't understand the implication, and would just click a random option. Which is OK, not everyone should be a IT expert, it's MS job to make the experience smooth.
edit: and a technical reason: i think FAT32 is the only guaranteed fs supported by UEFI
>TIL: In 2019, Microsoft released the exFAT [1] specs [...] I.e. exFAT should now be preferred over FAT/NTFS for media used across different operating systems.
You seem to be very optimistic about how fast these get implemented into embedded devices.
EFI doesn't actually mandate FAT for the system partition. The system partition can be any filesystem that the firmware supports.
Of course, pretty much all EFI implementations only support FAT, so it's a bit of a moot point; the only one I'm aware of that supports anything else is the one on Intel Macs, which also understands HFS+.
You can find a huge selection of EFI filesystem drivers at https://efi.akeo.ie/ but they're derived from GRUB and hence GPL, so don't expect the likes of American Megatrends to be bundling these any time soon.
No, but FAT32 does. Exfat, on the other hand has a file size limit of 16 exibibytes. That, combined with exfat's cross-platform mounting (NTFS has a lot of limitations in this regard) makes it a superior formatting system for flash based offline file transfer.
The spec allows it but whether FAT32 needed depends solely on the board not the age. I've got plenty of recent boards that don't take NTFS/exFAT - I usually find out when I'm scratching my head as to why it doesn't show up in the boot menu.
I've seen exactly one model line, that does support NTFS in UEFI: Intel NUCs. It was quite nice, but nobody preparing boot media can rely on the availability, as the only mandatory filesystem is FAT32.
reply