The following table compares general and technical information for a number of file systems. Please see the individual file system articles for further information.
File system: | NTFS | FAT32 | Mac OS X UFS | HFS+ | ext2 | ext3 | Reiserfs | XFS | JFS | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Creator | Microsoft | Microsoft | Apple | Apple | Rémy Card | Stephen Tweedie | Hans Reiser | SGI | IBM | ||||
Original operating system | Windows NT | Windows 98 | Mac OS X | Mac OS | Linux | Linux | Linux | IRIX | OS/2 | ||||
Limits | |||||||||||||
Maximum filename length | 255 bytes | 255 bytes | ? | 255 characters1 | 255 bytes | ? | ? | ? | ? | ||||
Allowable filename characters | Space plus any printable except {backslash} / : ? * " > < {pipe} | Space plus any printable except {backslash} / : ? * " > < {pipe} | Any non-null except / | Any Unicode2 | Any non-null except / | Any non-null except / | Any non-null except / | Any non-null except / | ? | ||||
Maximum pathname length | 32767 bytes | at least 260 bytes | ? | ? | no limit defined3 | ? | ? | ? | ? | ||||
Maximum file size | 16EB | 4GB | ? | ? | 16GB to 2TB4 | 16GB to 2TB4 | 8TB8 | 8EB | 8EB | ||||
Maximum volume size | 16EB | 2-8TB4,7 | ? | ? | 2TB to 32TB4 | 2TB to 32TB4 | 16TB | 8EB | 512TB to 4PB4 | ||||
Features | |||||||||||||
File type metadata | none (file extensions) | none (file extensions) | rich (type and creator) | rich (type and creator) | none (file extensions or magic numbers) | none (file extensions or magic numbers) | ? | ? | ? | ||||
Stores file owner | yes | no | yes | yes | yes | yes | yes | yes | yes | ||||
POSIX file permissions | no5 | no | yes | no | yes | yes | yes | yes | yes | ||||
Access control lists | yes | no | ? | no | yes | yes | no6 | yes | yes | ||||
Hard links | no | no | yes | no | yes | yes | yes | yes | yes | ||||
Soft links | no | no | yes | no | yes | yes | yes | yes | yes | ||||
Alternate data stream / resource fork | yes | no | yes | yes | no | ? | ? | ? | ? | ||||
Journaling | yes | no | no | yes | no | yes | yes | yes | yes |
Notes
1 Older versions of HFS only supported 31 character filenames; some older applications don't work well with names longer than this.
2 HFS+ mandates support for an escape sequence to allow arbitrary Unicode. Users of older software might see the escape sequences instead of the desired characters.
3 An OS might impose its own limit on the length of absolute pathnames, but unlimited nesting depth can be obtained using relative pathnames.
4 Depending on block/cluster size.
5 NTFS access control lists can express essentially any access policy possible using simple POSIX file permissions, but use of a POSIX-like interface is not supported without an add-on such as Services for UNIX or Cygwin.
6 Often shipped along with widely-used add-on offering this feature
7 While FAT32 partitions this large work fine once created, some software won't allow creation of FAT32 partitions larger than 32GB. This includes, notoriously, the Windows XP installation program.
8 ReiserFS has a theoretical maximum file size of 1EB, but "page cache limits this to 8 Ti on architectures with 32 bit int"[1]