Talk:Comparison of file systems

Confusing splits into sections
Right now this article is among others split into
 * Metadata
 * Features: File capabilities
 * Features: Block capabilities
 * Features: Allocation and layout policies

But as it is right now it is inconsistently applied:


 * "Metadata" deals mostly with global metadata, but has loads of metadata that is stored on a per file basis like owner, permissions, and timestamps and would fit better in "file capabilities".
 * "Metadata" also has a section Checksums that deals with metadata checksums only, but then there is a footnote for "Btrfs" that says: disabling checksums disables user data checksums. When that does not affect metadata checksums at all, only block checksums (I already fixed this just now)
 * "file capabilities" deals with naming/and file handling, but has a sections called "metadata-only journaling" that would fit better into the "Metadata" section.
 * "Block capabilities" has many features that concern user data, but that many filesystems don't make accessible on a per block basis but on a per file or per directory basis (e.g. encryption, or "data checksums" in ReFS). Or only on a per cluster rather than a per block basis. Maybe this section should just be called "user data capabilities"?

We should rename the sections and/or restructure the article so that the subsections actually make sense.

Kwinzman (talk) 17:08, 30 October 2021 (UTC)

Solaris does not support Lustre
Solaris doesn't support Lustre and incorrectly has a Yes box. See Sun's own page or Wikipedia's page. Aolcarton (talk) 17:59, 22 July 2008 (UTC)

NTFS Limits
The Limits section on NTFS states "Allowable characters in directory entries" are "Any Unicode except NUL, /". I believe this is incorrect. As stated in the Microsoft Naming a File page (http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx), it clearly states

That almost any character is supported, except for the following:


 * The following reserved characters are not allowed:

< > : " / \ | ? *


 * Characters whose integer representations are in the range from zero through 31 are not allowed.


 * Any other character that the target file system does not allow.

We discovered this limitation while backing up files from an HFS+ file system to an NTFS 6.0 file system. The HFS+ system had a carriage return (decimal value 13) embedded in the file name.

--Jamercee (talk) 20:56, 17 August 2008 (UTC)

The wikipedia article on NTFS states that "Allowed characters in filenames" in "Posix namespace" is "any UTF-16 code unit (case sensitive) except U+0000 (NUL) and / (slash)" and we are here to compare Filesystem so we must not care of Win32 limitations.

-- 14:18, 29 September 2008 (UTC) —Preceding unsigned comment added by 82.67.232.57 (talk)

I don't think I was clear in my original assertion. While copying files from an HFS+ filesystem to an NTFS filesystem we discovered that carriage return characters were NOT allowed while writting to the NTFS file system. Clearly Carriage-Return characters should have fallen within the range "Any Unicode except NUL, /". It would seem the limitation section should be expanded to encompass the true list of liminations, no?

Jamercee (talk) 20:05, 30 March 2010 (UTC)

Looks like youre confusing what your OS or software app allows with what NTFS allows 82.31.207.100 (talk) 23:25, 20 April 2010 (UTC)

Another limits that seems to be wrong (in contrast to page on ntfs and info on ntfs.com): max. filename length is 255 UTF16 code-points, not 226. Is this a limit yhat evolved over time in different NTFS versions? 82.247.156.143 (talk) 08:36, 6 July 2010 (UTC)

Also just mentioning in passing that Windows XP (presumably NT also) imposes a limit of 259 characters on the full path name but I'm not sure if that is a limitation imposed by NTFS or not.150.101.105.182 (talk) 04:24, 2 September 2010 (UTC)

UFS2 and Block Journaling Support
Please provide reference for UFS2's support of block journaling. I cannot find one.

Moniker117 (talk) 22:19, 28 September 2008 (UTC)

I've been looking around and here's some updates:

http://docs.sun.com/app/docs/doc/817-5093/fsoverview-43?l=en&a=view&q=ufs+logging
 * Solaris has support for "logging" using UFS. They introduced it in version 7 of Solaris. This is consistent with what the UFS article in wikipedia says regarding UFS and journaling. This type of journaling is, however, meta-data journaling. Below is a link that confirms the existance of such functionality:

http://www.freebsd.org/doc/en/books/handbook/geom-gjournal.html
 * FreeBSD implements a form of what their documentation calls "block level" journaling through GEOM. This appears to be a feature that is available with UFS or UFS2. Below is a link describing the functionality:

http://www.openbsd.org/faq/faq8.html#Journaling
 * OpenBSD does not implement any form of journaling. See below for link:

http://docs.hp.com/en/B2355-90950/ch02s05.html
 * HP-UX appears to use HFS which is an implementation of UFS and they have a separate file system for journaling support from Veritas. See link below:

I do not doubt that I am missing more operating systems. However, based on the above list, Solaris, FreeBSD, OpenBSD and HP-UX appear to use UFS, but only FreeBSD has data level journaling support. I did not expect one file system to have such variation on one particular feature. It seems fair to me that it should read "No" for both "block journaling" and "meta-data only journaling" under both UFS and UFS2 while having a comment to indicate that certain operating systems implement different levels of journaling support. Any thoughts?

Moniker117 (talk) 04:09, 1 October 2008 (UTC)

Correction on FreeBSD, the GEOM implementation of journaling appears to be filesystem independent. Therefore, it is not a UFS or UFS2 feature.

Moniker117 (talk) 14:36, 1 October 2008 (UTC)


 * Correction: FreeBSD's gjournal(4) requires filesystem support (transactions) in order to provide the safety guarantees for which journaling is desired; this is implemented in UFS2. (UFS1 is not distinct from UFS2 in this sense: it is the same code, just a different on-disk format.  So UFS1 "supports" journaling by default.)  121a0012 (talk) 03:06, 2 October 2008 (UTC)

NetBSD offers journaling on FFSv2 (UFS2) in recent kernels compiled with options WAPBL; mount FFSv2 volumes with the 'log' option to use this feature. —Preceding unsigned comment added by 84.83.37.40 (talk) 03:19, 6 November 2008 (UTC)

Guys, journalling is a feature of filesystem _implementation_, while UFS has many of them. Solaris UFS has journalling. Other UFS implementations don't, except for FreeBSD and NetBSD ones, which seem to be done independently to each other. So, it is unclear whether we can say that UFS implements journalling.

However, UFS2 tends to refer to the current FreeBSD implementation of UFS, which definitely has journalling. Trasz (talk) 12:29, 3 January 2009 (UTC)

Incidentally, the UFS logging in Solaris starts a long time before Solaris 7. In it's original incarnation, it required Disksuite and the logging was on to separate logging devices called trans meta logging. By Solaris 7, the log devices became invisible log files within the filesystem, and it was being bundled for free with the base OS, so it started being more widely known. 81.187.162.109 (talk) 06:39, 17 May 2009 (UTC)

HFS+ Online Shrink/Grow
Online shrink/grow for HFS+ are currently listed as "unknown". The Boot Camp Assistant allows shrinking (when you create a Windows partition) and growing (when you delete one) of the running system's HFS+ partition. I don't know whether this is implemented in the FS driver or if it's a hack implemented somehow else... 24.60.192.190 (talk) 23:12, 23 January 2009 (UTC)

Mistakes about ReiserFS?
The two tables for Metadata and Features, ReiserFS (which I assume is of the version 3) has none of the discussed properties ('No' for every single item). While I am no expert in file systems and ReiserFS in specific, this seems to be contradicting the page of ReiserFS, which states that one of the most publicised features of ReiserFS is "Metadata-only journalling". This suggests ReiserFS should have the minimal metadata for the purpose of system journalling. Besides, the table Features should otherwise have at least the Metadata journalling set to 'Yes' for ReiserFS. I have also checked earlier versions of this page (beginning of this year), and found that the tables were indicating many different properties for ReiserFS.

Obviously, vandalism has happened to this page recently. The maintainer of this page please restore the page to the proper state. It is much appreciated. 125.253.12.53 (talk) 14:34, 22 February 2009 (UTC)

The page about Extended attribute does state that ReiserFS, at least in recent versions, does feature xattr / metadata support! —Preceding unsigned comment added by Zuckerberg (talk • contribs) 13:17, 2 September 2010 (UTC)

http://linux.die.net/man/8/mount states that ACLs are supported in reiserfs. –84.169.112.96 (talk) 22:57, 26 January 2012 (UTC)

There is also the text “Full block journaling for ReiserFS was not added to Linux 2.6.8 for obvious reasons.” To me, the reasons are not obvious. That should be expanded upon, or some reference given. –84.169.112.96 (talk) 23:04, 26 January 2012 (UTC)

Include WinFS?
I was just reading about WinFS on it's own WikiPedia page, and was wondering how it compared to all these other file systems. It's not here. Oh well. I think it would be nice to have here. 71.174.4.229 (talk) 20:41, 7 June 2009 (UTC)

NTFS for windows 98 driver?
The link given is broken, does anyone have a backup for the driver that allows NTFS to be used with Windows 95/98? I could really use it. Coolgamer (talk) 03:43, 12 August 2009 (UTC)

NTFS 6.0
There does not exist any NTFS 6.0 ! There are only system extentions of Windows NT 6.0 (Vista/2008) but inside the specifications of the current NTFS 3.1

Deduplication
I've added a new column to the features table to cover deduplication. I've filled in what I know of existing or being in development, but this leaves a lot of unknown entries. I suspect that all of the unknown's are really no but I don't have the knowledge to say for sure. Darrenmoffat (talk) 11:38, 24 September 2009 (UTC)

Suggested Updates/Todos
I've Added/Updated Tables 1 and 2 for exFAT and TexFAT. But these 2 FS types should be added to tables:
 * 3 Metadata
 * 4 Features
 * 5 Allocation and layout policies
 * 6 OS support

Also Table 6 OS Support Needs Windows XP, Vista and Windows 7 break out (maybe in the same column?) Frankk74 (talk) 06:52, 14 October 2009 (UTC)

Sorting across the tables should be refined or made more consistent? Any thoughts?


 * Info about XP, Vista, and Win7 would be nice... It has been many since NT stopped being supported. 72.251.91.186 (talk) 02:43, 22 October 2009 (UTC)


 * Windows NT refers to the entire family of NT OSes; Microsoft decided to call NT 5.0 "Windows 2000", and all subsequent Windows NT OSes have had names that don't start with "Windows NT", such as "Windows XP", "Windows Vista", "Windows 7", "Windows Server 2003", "Windows Server 2008", etc.. Guy Harris (talk) 19:51, 17 January 2010 (UTC)

File Creation Time Stamps
Why there is "NO" for ReiserFS & Ext? for File Creation Time Stamps? I feel that this article is worthless since it contains obviously erroneous information. Might someone fix that or delete the article? --82.113.121.154 (talk) 21:00, 28 November 2009 (UTC)

My understanding is that these do not give you file creation time stamps. Instead you get the last inode update timestamp. Initially this corresponds to the creation time, but later changes (such as to file metadata) may change that timestamp, without modifying the underlying file data. —Preceding unsigned comment added by 216.105.130.254 (talk) 05:33, 28 July 2010 (UTC)

Market share
It would be interesting to have some comparison of market share or some other usage statistic, either here or on file system. -- Beland (talk) 14:29, 1 December 2009 (UTC)

It might, indeed. However, as file systems are hardly ‘products’ in the original sense (more like an abstract design), then the concept of ‘market’ is difficult to apply. This would be like having ‘market share’ for natural languages, as such. How would such data be collected, anyway? You've then got statistical analysis problems; for example: how should someone using multiple file systems be counted? They're not mutually exclusive, via partitioning. — Lee Carré (talk) 13:54, 27 December 2010 (UTC)

OS support
I feel that this table would be much more useful if it did not list any filesystems until they are supported by more than one OS. After all, while long list of special purpose linux filesystems is interesting, it seems like it perhaps defeats the purpose of this table? Why not focus on Cross-OS support, perhaps even labeling it such instead? —Preceding unsigned comment added by 66.162.99.237 (talk) 19:15, 29 December 2009 (UTC)

Would it make sense to add more mobile OSs? Android? — Preceding unsigned comment added by 50.157.95.208 (talk) 09:43, 17 April 2014 (UTC)

UFS2 limits
According to http://www.freebsd.org/projects/bigdisk/index.html, UFS2 file and volume limit is 2^73, not a "Yobibyte". --Eike sauer (talk) 08:56, 30 March 2010 (UTC)

Units for bytes
I just noticed this article uses lot of IEC prefixes such as EiB but WP:MOSNUM states the IEC prefixes are not to be used except in a few conditions that are not met by this article. I think changing the article to use familiar prefixes would be an improvement. 217.213.60.238 (talk) 18:47, 30 March 2010 (UTC)


 * It looks like the relevant bit of the MoS is specifically WP:COMPUNITS.


 * Currently the "Limits" section uses KB, MB, GB, TB, PB, EB, ZB, and YB. Some entries define them more precisely (usually x * 1024^n bytes), but many don't. In general these limits are derived from binary values, so perhaps there should be a note covering the whole table to say this. My opinion is that KB is confusing (though probably correct), MB and GB are definitely ambiguous, and TB and so on are actually incorrect, at least according to the JEDEC prefixes listed in Template:Bit and byte prefixes.


 * For example I was looking for information on UDF. The table says the maximum file size is 16 EB, and I think this is derived from 64-bit file sizes: 2^64 = 16 EiB. The table says "unknown" for UDF's maximum volume size, though I think I saw elsewhere it is 2^32 * (block size), which would be 2 TiB = 2^(32 + 9) for 512 B block hard disks and 8 TiB = 2^(32 + 11) for 2048 B block optical discs.


 * Personally I think TiB is generally more clear, and in this particular situation makes it clear that it's a different unit to the decimal TB commonly used for hard disks. For example it might avoid suggesting that a 2 TiB file system and a 2 TB hard disk are exactly the same size. But maybe I'm just being too technical, and there's a sentence in the MoS that says don't use the IEC units anyway.


 * Vadmium (talk) 02:32, 17 December 2010 (UTC)


 * As per the MOS I have changed the article to reflect the current consensus. HumphreyW (talk) 12:43, 15 December 2011 (UTC)
 * The GiB / TiB... were changed to GB / TB, but without the numbers being translated which had resulted in all values being inaccurate. I've edited it to have both the iB (exact) and B (approximations) values, though I do feel the B values add too much clutter. -- Stephane Chazelas (talk) 18:38, 8 January 2023 (UTC)

V6FS Max Size
This may sound random, but Wikipedia led me astray on my home work and I should try to prevent it for others. The given max size in: "The actual maximum was 8,847,360 bytes, with 7 singly-indirect blocks and 1 doubly-indirect block; PWB/UNIX 1.0's variant had 8 singly-indirect blocks, making the maximum 524,288 bytes or half a MiB." is incorrect. According to the Version 6 Manual, http://wwwlehre.dhbw-stuttgart.de/~helbig/os/v6/doc/V/fs.html, the max size is 32, but cannot be larger than 16 bue to only storing 24-bits of filesize info in each inode rather than 25. The 8,847,360 number obtained above was the result of calculating it with 4 byte addresses, which is obviously incorrect given the definition in the manual. Vkgfx (talk) 06:00, 7 April 2010 (UTC)

CoLinux
CoLinux is a port of the linux kernel. It allows running Linux natively under Windows. Therefore it is possible to use XFS, ReiserFS and ext3 in Windows as described here. Maybe this is mentionable? --Olytibar (talk) 05:42, 30 June 2010 (UTC)


 * Windows already has the ability to use XFS, ext3, etc. if by "use" you mean "connect to a linux box on the network that is running Samba" CoLinux makes it possible for that Linux box to be the same box that is running Windows, but it is still accessing a network share.  We don't count as being supported filesystems that are accessible by connecting to an OS running on a virtual machine, so we shouldn't count them under CoLinux.


 * It might be worthwhile mentioning in the article that support for non-native partitions is often available through these methods. That is very useful information for someone who doesn't know the trick.  Guy Macon  13:24, 19 September 2010 (UTC)

Why Isn't There More Information On Amiga OS?!
I am going to add more information on Amiga OS. It has information on the first table but none on the others. If anybody has objections to this, post them here and soon. In-Correct (talk) 00:05, 12 July 2010 (UTC)

GEORGE 2 & GEORGE 3
I notice that "George 2" appears as a file system, though without any reference or link. I don't know anything about GEORGE 2 but I did use GEORGE 3 and so I know that its filestore was very significant, having automatic volume management with backups, versioning etc. Were these the same filesystem or not? The GEORGE 3 one should certainly appear in the table, IMHO.

George 1 and 2 were really just batch job dispatch systems that sat on top of a standard ICL executive. You could use them or not, they were just slightly more privileged standard processes. George 3 was a complete operating system that took over the entire machine. One could only run George 3 on the larger "West Gorton" (and later "Stevenage") ICL machines that had extended branch mode addressing. 82.68.205.1 (talk) 18:16, 13 December 2013 (UTC)

There is a wikipedia entry about GEORGE - GEORGE_(operating_system) - that refers to online GEORGE 3 documentation including a description of the filestore http://www.icl1900.co.uk/g3/filestor.html 131.111.85.79 (talk) 09:40, 1 September 2010 (UTC)

Modern System Only Option
Many people coming to the page are only interested in comparing current Files Systems to decide which to use. However, because all of the comparison tables are multiple screens long and compare every file system that has existed, they find the page to be mostly useless. We need a way to show only current information for those who want it, in order to increase utility. A method for allowing the viewer to sort information and suppress what they don't need would also be good.

This is a general comment applicable to all comparison articles. —Preceding unsigned comment added by 136.142.206.28 (talk) 22:40, 15 October 2010 (UTC)

Original Operating System
The purpose of the field 'Original Operating System' is not clear. I would assume that it applies to the Operating System/s the Filesystem first appeared in. However, the field does not currently appear to reflect this. I have removed some anachronisms ie Windows pre NT (Windows v1 - 3.1 were not operating systems), and Mac OS X pre 1999, Linux pre 1990. There appear to be some other issues, eg Joilet support was not originally present in Mac OS and required an extension to be added, ISO9660 was not included in the Amiga OS until OS3.1 (released about 1992) but was available as a third party add on), XFS was originally IRIX only and then later ported to Linux (and by this logic, virtually all the FS could have Linux listed), and no doubt more. The solution may be to have two fields, one called Original Operating System, and another listing OSes which support the filesystems. 138.25.11.181 (talk) 03:04, 16 October 2010 (UTC)

Maximum file size and Maximum volume size format
Why aren't the values in these two columns in the scientific notation? This way the sorting by each of the columns would work correctly (now it doesn't).

512upload (talk) 22:38, 18 November 2010 (UTC)

-

Still undone - very annoying!!!

-

I have fixed this on 20 September 2015 with edit 681972851 - 162.222.246.77 (talk) 18:40, 20 September 2015 (UTC)

iOS (Apple)
What is the maximum file size for Apple iOS, which is used in the iPhone and iPad? I've been trying to find this official fact. • Sbmeirow  •  Talk  •  22:02, 23 December 2010 (UTC)
 * iOS uses HFSX, which is HFS+ with a few minor tweaks, none of which affect the maximum file size. Foxyshadis (talk) 09:26, 10 December 2011 (UTC)

Request for extra information about metadata space efficiency (percentage use of drive capacity)
I would, personally, like to see comparison data between the efficiency of differing file systems, particularly in the context of what percentage of the absolute total capacity is needed for file system metadata in order for it to represent the file system itself. For example, a less space-efficient design would use a larger percentage just to store metadata, rather than actual files, and vice versa. I realise that there are often more important factors than pure efficiency; such as discoverability for diagnostics, scalability, reliability, redundancy, et al. Notes on original design goals would be useful, too, if known, such as design for file storage, database, streaming media, sequential vs random access, et al. — Lee Carré (talk) 14:01, 27 December 2010 (UTC)


 * Most modern filesystems do not use a fixed reservation for filesystem metadata; the number you ask for will depend on the size, structure, and number of files stored, and in many cases also on the modification history, presence of snapshots, use of journaling, stride length, and size of the underlying disk sectors. So what you ask for really cannot be defined rigorously without a precise specification of the contents of the filesystem (and even there, the results would likely not be realistic).  For filesystems with integrated volume management, like ZFS, it would also depend on the configuration of the underlying storage pool.  121a0012 (talk) 22:24, 28 December 2010 (UTC)

Feb-2009 vandalism needs stripping out
I was wondering about the hatnote as there was no talk thread. I tracked the addition of the hatnote down to this massive edit on 16 Feb 2009. A couple of minutes after that edit is this small one by the same user. I took a look at Special:Contributions/Gzpguest and am quite concerned about that user's edit's to this article as he/she was blocked for edits to other articles and some of the user's contribution to this article was clearly an attempt to vandalize it.

I don't know if it was WP:AGF at work or the edits were overlooked. Someone corrected Gzpguest's change of ReiserFS to MurderFS but an edit battle of sorts started with people attempting to re-insert MurderFS wording and it looks like most of the Gzpguest contribution snuck through including the hat note that got my attention today.

I don't have time to do a blow-by-blow check of what Gzpguest modified in those two edits against the current article but believe we need to revert all information that this user added/removed to the article. Hopefully someone's got the time for that thankless task. I'll start by removing the hat note. --Marc Kupper&#124;talk 07:34, 31 December 2010 (UTC)

Allowed characters in NTFS file names
The articles says all Unicode character except NUL and \ / : * ? " < > | are allowed, but in Linux NTFS files can contain any Unicode character except NUL and /. —Preceding unsigned comment added by 193.150.222.25 (talk) 13:49, 20 January 2011 (UTC)

IlesfayFS?
Is it mentioned outside its inventors' site and this page? Notability? 195.98.165.2 (talk) 20:42, 8 February 2011 (UTC)

Remove HPUX
Besides being an essentially dead OS, the column is currently useless, which all unknowns except for one single Yes. If no one objects or fills it in, I'll remove it until someone comes in with better data. Foxyshadis (talk) 09:27, 10 December 2011 (UTC)

ICT/ICL 1900 file systems
A previous commenter has mentioned the inappropriate inclusion of George 2, which was in fact an operating system. The file system underlying George 2 (and all ICL 1900 executives/operating systems prior to George 3/4) was originally BDAS (Basic Direct Access Standards) and later UDAS (Unified Direct Access Standards). UDAS was noteworthy in providing a standard which meant that applications did not need recompilation, whatever type of direct access device they were accessing, anything from a small Twin EDS (about 1.5 megabytes, as I recall) to a large fixed disk. I am unclear to what extent the George 3 filestore was founded on UDAS, but on balance I think it was. 86.139.4.232 (talk) 20:39, 1 January 2012 (UTC)

ExFAT correction...
Why ExFAT's "year introduced" column has two dates? 2006 and 2009? it makes no sense. It was introduced in 2006 Cainamarques (talk) 02:35, 23 August 2012 (UTC)

Merger proposal
A merger proposal was made by Ruud Koot in January to merge List of file systems into this article but no discussion was started, so in before merging by silence...

Oppose - The differentiation between list and comparison works, they have different scopes so there is no overlap and also the resulting article would be too long Cainamarques (talk) 05:00, 25 August 2012 (UTC)

handling small files
please someone add how well the different file systems are at handling many many small files. i understand that reiserfs is good at this, and jfs is also alright, but that most file systems are not. please add this information. 41.204.77.67 (talk) 09:04, 18 October 2012 (UTC)

Handing of small files
Two questions that I can't find the answer to using this page: 1. What is the performance of handling high amounts of small files (up to a few dozen sector)? For example, FATxx and ReiserFS are very fast and journaling file systems (eg. NTFS) can be extremely slow. 2. How many files can be stored in one directory? For example, the only reason I'm not using FAT32 anymore is because when you put more than about 30000 files in a directory, it says disk full, while in fact only the directory is full. Exact number varies with length of filenames. --Zom-B (talk) 02:17, 11 November 2012 (UTC)

undelete
in praxis it is very important how good accidentally remarked files can be restored. for example fat, reiser3.6, ext2 files can be easier restored - ext3 is cruel   79.203.151.23 (talk) 22:46, 8 December 2012 (UTC)

QLFS?
One more for the pot? The disc file system of the Sinclair QL launched in 1984. — Preceding unsigned comment added by 66.81.120.218 (talk) 09:43, 12 December 2012 (UTC)

HDFS
What about less POSIX file systems? — Preceding unsigned comment added by 192.115.180.11 (talk) 10:27, 26 May 2013 (UTC)

Date range
I think it would be of interest to have a column "Date range". BuSchu (talk) 09:13, 17 October 2013 (UTC)

Separation of Resize feature column (in feature section)
Does it make sense to do the effort to separate the column for resize feature in one for online and one for offline resizing. Currently, the overview is rather poor as a statement like "Online (cannot be shrunk)" does not point out whether the shrinking is not possible online (but offline it is) or not possible in general. Some information is only usable if one reads the citation source, e.g. one might think that ext4 is online shrinkable after having a look on the table, while it might make the information in the footnote more easily accessible. Krichter1 (talk) 20:11, 27 January 2014 (UTC)

UFS Grow in FreeBSD
The ability to grow a UFS File system was added in FreeBSD 10 according to the Developers and many other sites and tutorials

[]

[] 89.207.120.69 (talk) 10:25, 21 February 2014 (UTC)

Windows Vista, Windows 7, Windows 8 not represented for "Average Joe" readers who don't know if Windows NT is the same or not
A major current OS is not represented in the supported OS section: Windows 8. Whatever its lineage, Win 8 may or may not have support for file systems that could differ from Win NT and Win 9x. Yet Win NT and Win 9x are the only "Windows" columns in the "Supported operating systems" section. For a non-power or non-historically-knowledgeable current Windows user, this supported OS section seems out of date. 169.234.72.254 (talk) 19:49, 18 April 2014 (UTC)


 * Windows NT refers to the entire family of OSes that began with Windows NT 3.1 and is currently up to Windows 10. Guy Harris (talk) 03:36, 13 October 2016 (UTC)

"Linux has a pathname limit of 4,096."
... of 4,096 what? UTF-8 coded Characters? Or Bytes? --91.15.18.34 (talk) 06:04, 24 January 2015 (UTC)

My math teacher would have a fit if she saw this. "ALWAYS use units, even on Wikipeia" 74.243.139.75 (talk) 18:04, 11 August 2015 (UTC)

ext filesystem limitations
The massive edit on 24 July 2015 (-42,930 characters) removed a lot of information and reformatted pretty much everything. All the ext filesystems had their "Allowable characters in directory entries" changed from "Any byte except NUL and /" to "Any byte except NUL". I believe this is in error. See http://stackoverflow.com/questions/9847288/is-it-possible-to-use-in-a-filename and the function "link_path_walk" in the source.

Thoughts or arguments? I propose the change be reverted. — Preceding unsigned comment added by 162.222.246.77 (talk) 16:14, 20 September 2015 (UTC)

UDF sparse file support
It surprised me that UDF was listed as not supporting sparse files. I have had success on FreeBSD and OS X with this in the past, in fact very long ago. The simplest way to do sparse files is with short_ad (Short Allocation Descriptor) marked 2 (extent not recorded and not allocated). Since two bits are needed for the type you have 30 bits left for the size. Assuming 512 block size, this permits holes of up to 1GB. Possibly linux or other OSes does not implement sparse file support or ls does not report it correctly, but at least when I tried it it worked in the naive manner of seeking to create the holes. Also this will work in any UDF version and any compliant implementation will return zeros on reading it. — Preceding unsigned comment added by 131.225.136.61 (talk) 18:36, 20 October 2015 (UTC)

Solid State Disks
As SSDs have become commonplace some mention of features contributing to relative suitability of different file systems for use with SSDs and/or file system features for taking advantage of SSDs, would be welcome. --Ericfluger (talk) 15:46, 29 February 2016 (UTC)

Hammer?
Inclusion of the Hammer file system from Dragonfly BSD would be welcome. (HAMMER) --Ericfluger (talk) 16:16, 29 February 2016 (UTC)

Regarding File capabilities, HAMMER has the following: TriTachionTertiary (talk) 16:00, 24 August 2017 (UTC) (table shows up at the end of the page (!?)) — Preceding unsigned comment added by TriTachionTertiary (talk • contribs) 16:04, 24 August 2017 (UTC) (HAMMER row added, removing table as it is shown in the wrong place) TriTachionTertiary (talk) 23:25, 25 September 2017 (UTC)

Multiple implementations?
While there's no room for details, it might be helpful to call attention to file systems with significant differences between multiple implementations (UFS) or with different on-disk formats (CP/M). Footnotes with links to the in-depth articles might do it. --Ericfluger (talk) 16:21, 29 February 2016 (UTC)

XFS Introduced When?
This page states that XFS was introduced in 1994, but the main XFS article says 1993. Which is it? Paulej (talk) 05:57, 4 July 2016 (UTC)
 * The main article says "Silicon Graphics began development of the Extents File System or XFS in 1993, including it in IRIX for the first time in its version 5.3 in 1994." So probably wasn't generally available before 1994, but may already have been promoted earlier. (ZFS was also being marketed a long time before it shipped in Solaris 10). —Ruud 14:36, 4 July 2016 (UTC)

Limits of directory "size"?
I would appreciate a column about the maximum number of entries per directory. Actually, this page is referenced from a serverfault question adressing this information (which is of course serverfaults fault) - Peter W. 85.176.72.158 (talk) 14:16, 6 February 2017 (UTC)


 * The Server Fault question also has a lot of answers pointing out that most if not all Unix filesystems do not have hard limits (other than "directories use the same type of container as regular files, so whatever limits the file system might place on container size limit the number of entries in a directory") on the number of entries per directory, so, at least for Unix file systems, the column would say "unlimited" or "N/A" or something such as that. I suspect the same applies to Windows filesystems. Guy Harris (talk) 17:58, 6 February 2017 (UTC)

Resize capabilities table is wrong for JFS (Linux or AIX?)
JFS does support online grow, it does NOT support offline grow. I know it seems weird, but this is how it works. To online grow JFS partition one has to run the following command: mount -oremount,resize /dev/sda1 The resize option is invalid without remount option.

# lvcreate -n test /dev/Arch -L 20M Logical volume "test" created

mkfs.jfs /dev/Arch/test mkfs.jfs version 1.1.12, 24-Aug-2007 Warning! All data on device /dev/Arch/test will be lost!

Continue? (Y/N) y

Format completed successfully.

20480 kilobytes total disk space.

# lvresize -L +10M /dev/Arch/test Rounding up size to full physical extent 12,00 MiB Extending logical volume test to 32,00 MiB Logical volume test successfully resized

mount -oresize /dev/Arch/test /mnt/1 mount: wrong fs type, bad option, bad superblock on /dev/mapper/Arch-test

^^^^ this command proofs that offline resize is not possible

# mount /dev/Arch/test /mnt/1

# mount -oresize,remount /dev/Arch/test

# df /dev/Arch/test Filesystem          1K-blocks      Used Available Use% Mounted on  none                   4086148       516   4085632   1% /dev

— Preceding unsigned comment added by 195.206.112.7 (talk) 12:20, 26 March 2017 (UTC) JaZ99


 * Feel free to update the article, preferably with a reliable source rather than your tests, as your own tests could be viewed as original research. Guy Harris (talk) 16:55, 26 March 2017 (UTC)


 * Probably this information is only refered to Linux. AIX support it since long time ago. April 2017 — Preceding unsigned comment added by 59.149.137.130 (talk • contribs) 04:25, 11 April 2017 (UTC)

File checksums
The File capabilities list is missing a column about file content/user data checksums. This would include ZFS, ReFS, NILFS, HAMMER (entire row to be added) and Btrfs - but not APFS, which only does metadata checksums. Am I missing one? TriTachionTertiary (talk) 15:49, 24 August 2017 (UTC)


 * NTFS not support file checksums. ECC is supported on block device level, not the filesystem level. The checksum supported "Yes" is misleading. Interpreted in this way, all filesystem on hard disks support ECC for example... :):):):) — Preceding unsigned comment added by Szolnoki~enwiki (talk • contribs) 19:20, 2 September 2020 (UTC)


 * I agree. Since this comparison is for filesystems we should only include the properties of filesystems it self. E.g. ZFS =yes. But if the checksums are a separate layer like "dm-verity" then no. And if it's just the regular ECC that is on every HDD disk then obviously also no. Kwinzman (talk) 14:09, 30 October 2021 (UTC)


 * I agree this category is confusing right now. It should be split into: "metadata checksums/ECC", and "data checksums/ECC". I think that's also what you meant when you said "file" checksums. Kwinzman (talk) 14:05, 30 October 2021 (UTC)


 * I just realized that user data checksums are in a separate table "Block capabilities". Kwinzman (talk) 16:57, 30 October 2021 (UTC)

OrangeFS
OrangeFS should be added to this page — Preceding unsigned comment added by 192.107.156.197 (talk) 17:10, 14 September 2017 (UTC)


 * Feel free to do so. Guy Harris (talk) 17:56, 14 September 2017 (UTC)

Allowed characters in file name for APFS
APFS accepts only valid UTF-8 encoded filenames for creation, and preserves both case and normalization of the filename on disk in all variants. [...] APFS doesn’t allow files to be created with filenames that contain unassigned codepoints in the Unicode 9.0 standard, whereas HFS+ does.


 * Feel free to update the APFS entry. Guy Harris (talk) 17:24, 17 September 2017 (UTC)

Remove "software license" column again
In my opinion the added "software license" column by Tim@ is misleading. NTFS is listed as GPL, however none of the FAT variants are. Everything implemented in any BSD and Linux would have to be listed under two licenses, e.g. the ISO 9660 Fs. HAMMER (from DragonflyBSD) is listed as "Proprietary", which is wrong. Same for UFS2. Where the links just crawled and searched for a mention of any license?

I would argue that a "license" does not make sense for a file system, especially since most are tighly integrated into an OS. In the end this just lists the licenses of the implementing OSes, with few exceptions (ZFS). The Patent situation (see exFAT) might be more relevant. TriTachionTertiary (talk) 15:24, 27 September 2017 (UTC)


 * Furthermore, given that an on-disk (or over-the-wire, for remote file systems such as NFS and SMB) file system can have multiple implementations, under different licenses, in which case speaking of the file system's license would not make sense. At most, it could refer to the license of the first implementation, by the creator of the file system. Guy Harris (talk) 17:03, 27 September 2017 (UTC)


 * Yes I just added "most permissive license" instead of "current creators license" (as some change over time). This is a common column for many software categories and is useful to many. Many popular file systems are ported to other operating systems and as MS vs Motorola demonstrates it's important to know the licensing and patenting. Also fixed hammer and UFS. --Tim (talk) 01:52, 28 September 2017 (UTC)


 * Microsoft Corp. v. Motorola Inc. concerned patenting. A software license wouldn't be violated by a clean-room implementation, but a patent can be infringed even by a clean-room implementation.  Your changes don't mention patents. Guy Harris (talk) 02:30, 28 September 2017 (UTC)


 * And that case also didn't involve file systems. File Allocation Table mentions patent cases relating to the FAT file system.  Guy Harris (talk) 07:24, 28 September 2017 (UTC)


 * "Most permissive" gets a bit weird too. Many of the file systems listed as proprietary (HFS Plus, exFAT for example) should be listed as GPL by this reasoning, as they have GRUB and/or Linux drivers.  There's other cases such as ZFS, which also has a GPL'd implementation in GRUB, but it's not really clear whether CDDL or GPL is more permissive (though they are usually considered mutually incompatible).  Perhaps it's better to just remove the column. --Chungy (talk) 21:13, 4 January 2018 (UTC)

While I think license is an interesting and important property of a filesystem, it seems to me that license is not relevant to the filesystem so much as the code that implements it. The filesystem itself is either open (i.e., published standard) or proprietary (but possibly reverse engineered), either patent encumbered or patent free. If I recall correctly, NTFS is not GPL, and not open, but it has GPL implementations that came from reverse engineering. According to NTFS, it has multiple proprietary and GPL implementations, so calling it GPL is clearly misleading -- I suppose you could list it as both GPL and proprietary, unless I'm wrong and Microsoft published NTFS specifications under GPL. --ssd (talk)


 * As far as I know, Microsoft have not published any NTFS specifications, under any license, and the NTFS implementation in Windows NT-family OSes is not GPLed. There exist other implementations, released under other licenses; there's one for Linux that's GPLed, for example. Guy Harris (talk) 17:32, 28 September 2017 (UTC)
 * I have already updated the article to reflect this, but other filesystems (e.g., vfat) are also in this situation. --ssd (talk)

For pretty much all the reasons stated in this thread as well as WP:BOLD, I'm removing it again. The column header indicates "most permissive implementation" but the entries clearly don't follow suit. Most of the file systems listed as "proprietary" would otherwise be listed under open source licenses (Unix v6, v7, FAT, Rock Ridge, ISO 9660, APFS...). It's rather ridiculous, and I think the article is better off without the misleading information. --Chungy (talk) 21:41, 10 October 2018 (UTC)

Missing filesystems
At least two filesystems that are quite commonly used in embedded space are missing from this page: SquashFS and UBIFS. Keyakakushi46 (talk) 13:28, 5 October 2017 (UTC)

Yaffs is also missing. — Preceding unsigned comment added by 80.5.216.234 (talk) 23:11, 23 June 2018 (UTC)


 * Feel free to add them. Guy Harris (talk) 17:39, 5 October 2017 (UTC)


 * Added SquashFS. Feel free to correct any of my mistakes. Keyakakushi46 (talk) 08:18, 20 October 2017 (UTC)

APFS Resizing Capabilities
Are APFS resizing capabilities (online/offline grow/shrink) known yet? I found this article. 46.117.131.56 (talk) 20:34, 12 October 2017 (UTC)

EDIT: I also found this now. 46.117.131.56 (talk) 20:37, 12 October 2017 (UTC)

Hard links to directories
I came here to see which other file systems (still) support hard links to directories (HFS+ yes, APFS no longer)... — RFST (talk) 06:06, 14 December 2017 (UTC)


 * Just about all UN*X file systems support it at the on-disk data structure layer.


 * A long time ago, in a galaxy far far away, AT&T's UNIXes supported them at the API layer, mainly for the use of the mkdir command, which used, as I remember, a mknod system call, followed by some link system calls to make the . and .. links. You had to be root in order to make a hard link to a directory, because they discouraged using them for purposes other than making the . and .. links; mkdir was set-UID root.


 * 4.2BSD introduced a mkdir system call, which did all the necessary . and .. linking; it didn't require root permission, and obviated the need to allow link to create hard links to directories; as I remember, 4.2BSD didn't allow it at all. That was adopted by most if not all UN*Xes, which, as far as I know, also completely disallowed hard links to directories, even as root, at the API layer.


 * Apple lifted that restriction when they introduced Time Machine, as "the poor man's deduplication"; as I remember, it's only supported on volumes configured as Time Machine volumes, and may even require some special right granted only to backupd.


 * So, whether the file system data structures support it or not, most UN*Xes don't allow it on any file system. The only exception I know of is HFS+ in those versions of macOS that support Time Machine.


 * As such, the best way to indicate that is probably to put a "including hard links to directories" note for HFS+, and not indicate the lack of support for any other file systems - at most, I'd add a general note before the table saying "hard links to directories are generally not supported, with exceptions indicated below". Guy Harris (talk) 06:34, 14 December 2017 (UTC)


 * Then the user is left to wonder whether a particular file system does not allow them or has not been checked yet. It would probably be clearer to just list the known example(s) in the note itself. — RFST (talk) 21:30, 14 December 2017 (UTC)


 * Well, there's already a link in the column header for more information, and (I'm surprised) I couldn't find any additional examples, so... — RFST (talk) 22:05, 14 December 2017 (UTC)

Operating system notability in the support section
Columns have been added for ReactOS and Redox, and while I can appreciate enthusiasm that their fans engender, I don't believe either of these constitute a major operating system as of now, and are just minor hobbyist projects instead. I don't believe they deserve to be listed on this page. Thoughts? --Chungy (talk) 21:10, 4 January 2018 (UTC)


 * I've gone ahead and removed this, WP:BOLD and all. Sorry to the fans of the OSes, I don't think they deserve mention here. --Chungy (talk) 08:46, 23 January 2018 (UTC)


 * Same for the Redox OS file system TFS, also removed that. Only had yes or dunno wrt. features, and it is not even stable yet. --TriTachionTertiary (talk) 22:03, 29 July 2018 (UTC)

NFS not included
Is there a reason why NFS is not included? 88.133.199.106 (talk) 09:13, 21 September 2018 (UTC)


 * As File system indicates, there are several types of file system. The taxonomy in that section mixes up several independent characteristics, but the first few categories all refer to a file system that directly stores data on some medium, whether sequential (tape file systems) or random-access (disk file systems, flash file systems).  "Database file systems" are a form of file system for random-access media.


 * "Transactional file systems" are file systems that can perform operations as transactions; that's independent of the type of medium on which the data is stored.


 * The next category is "network file systems"; those don't directly store data on some medium, but, instead, provide a network protocol that can be used to access data stored on a medium on some other machine on the network. NFS, SMB, AFP, and NCP are all protocols provided by network file systems.


 * This article doesn't explicitly say so in the introduction, but it includes only file systems that directly store data on a medium, whether the file system is local (providing access only to a machine to which the device containing the medium is directly attached) or distributed (a shared disk file system).


 * Directly comparing on-a-medium file systems and network file systems can be misleading:


 * The protocol might impose limits, but the on-a-medium file system on a server for the protocol might also impose limits that are stricter than those of the protocol - for example, a file name's length is limited in NFS only by the maximum length of an XDR string, but if the server is using the UNIX V7 file system (or a variant thereof, such as the System V file system), file names are limited to 14 bytes, and other file systems might impose higher limits.


 * The protocol might support access to particular file metadata or certain other file capabilities, but, again, the on-the-medium file system on a server might not support all of the metadata and capabilities the protocol supports and might support metadata or capabilities that the protocol doesn't support.


 * The "Resize capabilities" and "Allocation and layout policies" tables would not apply at all to a network file system.


 * If this article were to include NFS, it would have to include other network file systems; it would also omit those file systems from the tables in question, not because nobody's bothered to create an entry but because the table doesn't apply to network file systems, and would have to describe the protocol's limits and support for types of metadata and other capabilities rather than the capabilities of typical server file systems.


 * Another possibility would be a "Comparison of network file systems" table, comparing the capabilities of the underlying protocols. Guy Harris (talk) 17:26, 21 September 2018 (UTC)

posix file permissions
I reviewed the posix wikipedia article for posix and did not find any reference to file permissions.

POSIX defines both the system- and user-level application programming interfaces (API), along with command line shells and utility interfaces, for software compatibility (portability) with variants of Unix and other operating systems.

Is there such a thing?

DGerman (talk)
 * Section 4.5 "File Access Permissions" of the Single UNIX Specification. Guy Harris (talk) 21:01, 6 June 2022 (UTC)


 * Thanks
 * DGerman (talk) 22:11, 6 June 2022 (UTC)

Flash File Systems
Flash_file_systems Should be included.

+++++

https://github.com/littlefs-project/littlefs

https://en.wikipedia.org/wiki/YAFFS

https://en.wikipedia.org/wiki/JFFS

https://en.wikipedia.org/wiki/UBIFS

https://en.wikipedia.org/wiki/LogFS

https://en.wikipedia.org/wiki/NILFS

Is it common enough or of enough interest to include?

DGerman (talk) 16:07, 6 June 2022 (UTC)
 * NILFS is already there. The first table has a rather, well, eclectic collection of file systems, so I don't see any obvious criterion that would prevent those file systems from being included.
 * If "Is it common enough or of enough interest to include?" means "are flash file systems of enough interest to include?", there's nothing about flash file systems as defined by flash file system:
 * "A flash file system is a file system designed for storing files on flash memory–based storage devices. While flash file systems are closely related to file systems in general, they are optimized for the nature and characteristics of flash memory (such as to avoid write amplification), and for use in particular operating systems."


 * that would indicate that they should be excluded and, in fact, one of them is, as noted, already included. Guy Harris (talk) 20:20, 10 August 2022 (UTC)

ReFS maximum filesize
It seems that source 27 for the ReFS max filesize has changed, it now reports a max filesize of 35PB instead of 16EiB. Checking the Internet Archive it did indeed previously report 18EB, which is approximately 16EiB. I'm pretty sure the new change is wrong on microsoft's side, since source 25 still reports 16EiB (2^64 - 1 bytes). Funnily, both are microsoft sources.

There generally seems to be a dispute/misinformation regarding the maximum filesize. The german wikipedia currently reports a maximum filesize of 262144 EiB - 1 byte, probably the source is wrong here as well. Jkhsjdhjs (talk) 00:39, 24 December 2022 (UTC)

Case Preserving
Case Preserving should be replaced with Form Preserving or similar. In its current form it might be misunderstood to mean exact preservation of input. HFS+ for example, to the best of my knowledge, does not preserve the input while being case preserving. — Preceding unsigned comment added by 174.116.11.227 (talk) 14:00, 21 September 2023 (UTC)
 * There are two topics there - "does a new file name get used without converting characters from one case to another, even if other aspects such as the normalization form of the characters gets changed from what was specified by the software", for which an answer of "yes" means it's case-preserving, and "does a new file name get used *exactly*, byte-for-byte, in the form handed to the file API in question?", for which an answer of "yes" might mean "form-preserving" or something such as that.
 * In at least some, perhaps many, situations, "case-preserving" is sufficient.
 * So I don't see a reason for replacing "case-preserving" with some other term. Guy Harris (talk) 08:46, 20 October 2023 (UTC)

Modification Time
In the Metadata table, we need a Modification Timestamp, and the "Last metadata change timestamps" column might need to be clearer as to what it means.. — Preceding unsigned comment added by 174.116.11.227 (talk) 14:00, 21 September 2023 (UTC)


 * Agreed. It would be prudent to include this with a more precise title, such as "Last content change timestamps".
 * (a list of common terms, such as "Modification date" or "Modification timestamp", can be placed in an EFN if necessary for clarity)
 * -- Jim Grisham (talk) 17:43, 5 June 2024 (UTC)
 * Somewhat related: the "Last metadata change timestamp" behaves differently between many file systems for directories. (Some only update the date when the directory metadata, excluding the list of contained files, changes, some update the date when the directory is moved or copied even if no metadata or contained files change ... although that is likely to be more of an OS/driver issue, some update the date when the list of contained files changes but not of an individual file is changed, etc.)
 * These distinctions should be noted by editors in the table whenever possible. Jim Grisham (talk) 17:52, 5 June 2024 (UTC)

Crash Consistency safety?
We maybe should add a column for crash-consistency for each filesystem. It is a kinda important information. Does finality of writes exist, even if the server crashes exactly after it told the application the write/sync completed? Will it damage the filesystem and require fsck? Will it "just work" after a reboot? Agowa (talk) 10:06, 23 October 2023 (UTC)

Concurrency safety?
Information about how filesystems deal with being simultaneously mounted on multiple server I.E. accessed concurrently by multiple systems would be important. Especially nowerdays as everything is moving to more and more "cloud-philosophy". Only a few filesystems support RW access from multiple independent servers to the same shared backing block device. Many/Most however support single RW and multiple RO access just fine. And only a few don't support any concurrency at all. And in cases of where single RW and multiple RO access works, it should be noted if that is enforced by the filesystem (e.g. by checking timestamps) or not.

This kind of safety is often also referred to as shared-disk file system. As formerly stated, such setups are very commonly used for: backup purposes (backup server has a RO mount of the production filesystem), server rooms and centers that have a dedicated storage network (SAN), virtual machines, ... Agowa (talk) 10:15, 23 October 2023 (UTC)

ReFS limits
The limits in this article are not the same as in the ReFS article. The limit is 35PB. Can someone verify it and fix? ויקיטכני (talk) 19:11, 26 March 2024 (UTC)

Support for multiple virtual file systems
I'm not sure what the actual term for these are, APFS calls them 'containers', btrfs 'subvolumes', zfs 'datasets', but it's the support for multiple virtual file systems, backed by the same partition on the same block device.

Would it be worth it to add another column on the support tables for these? Foxtdev (talk) 16:52, 3 July 2024 (UTC)
 * APFS calls them 'containers' APFS calls a disk or partition (or a RAID group) a "container", with "volumes" containing file systems inside it (and there can also a be "volume group" within a container, with multiple volumes in the volume group), at least according to Disk Utility on macOS Ventura. So the name for a file system in APFS appears to be "volume", not "container".
 * it's the support for multiple virtual file systems Unfortunately, virtual file system already has a different meaning, so it's not really the right choice of name.
 * backed by the same partition on the same block device With ZFS, a zpool can have more than one vdev, and a vdev can have multiple physical devices. As noted, macOS supports RAID, so a container can also consist of multiple physical devices, and, given Linux's LVM, the same is presumably true of whatever btrfs subvolumes are contained in.
 * I think of it as multiple file systems within a shared storage pool (whatever form the storage pool may take), but that may be an invented terminology. Guy Harris (talk) 19:38, 3 July 2024 (UTC)