I often use movable disk (USB) to change data between different OSs, almost four kinds -- Linux, Windows, Mac OS X, FreeBSD. Obviously, VFAT is supported in all kinds of OSs. But the short is: It cannot preserve common UNIX attributions, such as ownership, privileges. NTFS is writable using FUSE under Linux and Mac OS X, seems not writable under FreeBSD. Ext2 is accessible under Windows using tools (e.g. ext2fsd), how about it under FreeBSD and Mac OS?

Candidates: Ext2? NTFS? VFAT? It seems Ext2 is good. Any other candidate?

migrated from stackoverflow.com Feb 14 '12 at 7:25

This question came from our site for professional and enthusiast programmers.


I think ext2 is the only option here - if you need a POSIX compliant FS. Vfat is the obvious choice if you can live without unix ownership.

  • 1
    +1 with @Kimvais. There are fuse based ntfs and ext2/3 tools on FreeBSD. – Ouki Feb 14 '12 at 7:36
  • I looked up wikipedia and found nothing usefully for my question. It seems the only choice is ext2 now. Hope there will be a kind of fs for all OSs, especially optimized for movable disk. – Vivodo Feb 14 '12 at 7:55
  • Don't get your hopes up. Linux can mount almost anything under the sun, so there is no need for a special FS for that. Mac and Windows users don't need UNIX attributes, so the companies couldn't care less. And the trend is towards cloud FS - in a few years, no one will use thumb drives anymore. – Aaron Digulla Feb 14 '12 at 8:37
  • 1
    I'm not sure about ext2. It has limited support in FreeBSD (inode size must be <= 128 IIRC). I would rather go for NTFS. – maxelost Feb 24 '12 at 16:29

I like UDF for my portable storage media filesystem needs, but it comes with a few caveats:

  • No native write support in Windows XP, legacy Linux, OpenBSD, FreeBSD, Solaris or pre-10.5 MacOS.
  • No useful reading support in pre-2k Windows.
  • Limited to version 1.50 or 2.01 for write support in Linux.
  • Limited to version 1.50 for read support in OpenBSD(more correctly, not 2.0x), FreeBSD and Solaris.

Taking these into account, you would get decent compatibility with version 1.50, or 2.01 if you don't need *BSD support. I believe the more recent version has some improvements on performance in relation to overwriting, but I'm no expert.


Note that there are a lot of incorrect man-pages for mkudffs in the wild. On a usb drive you really want to set the blocksize to 512 bytes. If I remember correctly, things break on Windows otherwise. Also, you probably want to set --media-type=hd.

  • I create a partition as '0x83' (Linux type) on my USB disk and then mkudffs --media-type=hd --utf8 /dev/sdc1. I can mount it manually. But the KDE device monitor cannot recognize it automatically. – Vivodo Feb 26 '12 at 11:34

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.