Filesystems: Difference between revisions

From CCP4 wiki
Jump to navigation Jump to search
No edit summary
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page serves to give some information on possible filesystems for Linux machines, in particular those that may be used for very large filesystems (many TB).
This page serves to give some information on possible filesystems for Linux machines, in particular those that may be used for very large filesystems (many TB). The list is sorted by age!


== Ext3 ==
== XFS ==
* fairly old, but well established and well behaved
* SGI's filesystem (1994) that was ported to Linux around 2001
* does not support more than 16GB
* no 16 TB limitation; max size is 8 Eib (1 exbibyte = 2^60 bytes)
* does not support transparent compression  
* no data compression and checksumming (data-integrity) features. It does have metadata checksums.
* does not support checksumming (a data-integrity feature)
* the default for RHEL starting at version 7
 
== ZFS ==
* Sun's filesystem which is natively available on Solaris (since 2005)) and OpenSolaris (both of which are freely available)
* no 16 TB limitation; max size is 2^128 bytes
* (optional) transparent (gzip) compression (LZO compression available as patch)
* atomic updates - means that the on-disk state is consistent at all times, there's no need to perform a lengthy filesystem check after forced reboots/power failures
* background checksumming and self-healing for data integrity
* Built-in stripes (RAID-0), mirrors (RAID-1) and RAID-Z (it's like software RAID-5, but more efficient due to ZFS's copy-on-write transactional model)
* triple parity raid (raidz3) has been added to ZFS [http://blogs.sun.com/ahl/entry/triple_parity_raid_z]
* there is a port of ZFS to FreeBSD
* the source code license of ZFS is incompatible with the GPL of the Linux kernel, therefore not in the latter
* install from http://zfsonlinux.org/


== Ext4 ==
== Ext4 ==
* fairly new in Linux kernel (since 2.6.27 or so)
* ext4 is based on ext3 (same developers)
* becoming the default of new Linux distros
* default of some Linux distros
* no 16 GB limitation
* no 16 TB limitation; max size is 1 EiB (1 exbibyte = 2^60 bytes)
* no compression and checksumming (data-integrity) features
 
== XFS ==
* SGI's filesystem that was ported to Linux some years ago
* no 16 GB limitation
* no compression and checksumming (data-integrity) features
* no compression and checksumming (data-integrity) features
== ZFS ==
* Sun's filesystem which is natively available on Solaris and OpenSolaris (both of which are freely available)
* there are ports of ZFS to FreeBSD and Mac OSX
* the source code license of ZFS is incompatible with the GPL of the Linux kernel; nevertheless Sun is considering a kernel port (see http://www.wizy.org/wiki/ZFS_on_FUSE) 
* available as userland filesystem (ZFS-over-FUSE) on Linux;  installable packages are available e.g. on latest Ubuntu und Fedora (see http://www.linux-magazine.com/w3/issue/103/ZFS.pdf)


== btrfs ==
== btrfs ==
* latest addition to native Linux filesystems; stable version since 2.6.31 kernel (http://www.h-online.com/open/Kernel-Log-2-6-31-Tracking--/features/113671)
* latest addition to native Linux filesystems; considered stable since 2.6.31 kernel (2009; see http://www.h-online.com/open/Kernel-Log-2-6-31-Tracking--/features/113671)
* no 16 TB limitation; max size is 16 Eib (1 exbibyte = 2^60 bytes)
* (optional) transparent (zlib) compression
* checksumming for data integrity is implemented
* a review of btrfs from an ex-ZFS engineer: http://lwn.net/Articles/342892/
* a review of btrfs from an ex-ZFS engineer: http://lwn.net/Articles/342892/
* you can upgrade an existing linux file system to btrfs without destroying the existing fs or duplicating the data: http://btrfs.wiki.kernel.org/index.php/Conversion_from_Ext3  
* you can upgrade an existing linux file system to btrfs without destroying the existing fs or duplicating the data: http://btrfs.wiki.kernel.org/index.php/Conversion_from_Ext3  
* http://www.h-online.com/open/The-Btrfs-file-system--/features/113738
* http://www.h-online.com/open/The-Btrfs-file-system--/features/113738

Latest revision as of 21:23, 28 November 2016

This page serves to give some information on possible filesystems for Linux machines, in particular those that may be used for very large filesystems (many TB). The list is sorted by age!

XFS[edit | edit source]

  • SGI's filesystem (1994) that was ported to Linux around 2001
  • no 16 TB limitation; max size is 8 Eib (1 exbibyte = 2^60 bytes)
  • no data compression and checksumming (data-integrity) features. It does have metadata checksums.
  • the default for RHEL starting at version 7

ZFS[edit | edit source]

  • Sun's filesystem which is natively available on Solaris (since 2005)) and OpenSolaris (both of which are freely available)
  • no 16 TB limitation; max size is 2^128 bytes
  • (optional) transparent (gzip) compression (LZO compression available as patch)
  • atomic updates - means that the on-disk state is consistent at all times, there's no need to perform a lengthy filesystem check after forced reboots/power failures
  • background checksumming and self-healing for data integrity
  • Built-in stripes (RAID-0), mirrors (RAID-1) and RAID-Z (it's like software RAID-5, but more efficient due to ZFS's copy-on-write transactional model)
  • triple parity raid (raidz3) has been added to ZFS [1]
  • there is a port of ZFS to FreeBSD
  • the source code license of ZFS is incompatible with the GPL of the Linux kernel, therefore not in the latter
  • install from http://zfsonlinux.org/

Ext4[edit | edit source]

  • ext4 is based on ext3 (same developers)
  • default of some Linux distros
  • no 16 TB limitation; max size is 1 EiB (1 exbibyte = 2^60 bytes)
  • no compression and checksumming (data-integrity) features

btrfs[edit | edit source]