Best format for shared USB drives

EXFAT is the most convenient format for sharing files between Mac/Linux/Windows/Android. Caveat: ExFAT cannot handle symbolic/soft links.

Operating systems have supported EXFAT for many years, since:

  • Windows: XP
  • MacOS: 10.6.3
  • Linux: CentOS 5, Ubuntu 10.04, etc.
  • Android: 4

On Linux (including Ubuntu 18.04), install ExFAT support:

apt install exfat-utils


Use FAT32 instead of EXFAT for:

  • Test equipment (e.g. Agilent)
  • some older USB drive accepting printers (print direct from USB stick)

Other file systems

These file systems are commonly, but not universally supported across OS’s.


NTFS is not writeable on Mac OS X by default, and it is said to be a security risk to enable NTFS on Mac OS X. It’s something not easy to do at a conference or casual meeting quickly. NTFS is NOT supported on Android.


FAT32 is readable by Windows/Mac/Linux/Android, but is limited to 4 GB file size. With many USB HDDs over 2 TB, you would have to break up your HDD into multiple partitions for FAT32 – quite inconvenient. You could use FAT32 for a small USB flash drive.

Note: I have found with old printers “USB Direct Print” that only single partition FAT32 is supported. Keep a small USB drive formatted to FAT32 for this purpose.


ExFAT is the best choice for universal support on USB HDD. For USB flash thumb drives and SD cards, I format most to ExFAT–keeping a small flash drive formatted to FAT32 in case I need to quickly use the USB port on a USB direct print printer (Dell, Brother, etc.)

Caveat: Some devices such as in-car entertainment, printers, Agilent test equipment, etc. require drives to have only a single FAT32 partition. Since USB drives are so small and inexpensive, I keep an old USB flash drive formatted to FAT32 for these special cases.

SD cards increasingly use ExFAT, but for old devices, you may need to use FAT32 for compatibility.