Which File System for a Large Storage Array Under Linux?

Mon 30 November 2009 Category: Uncategorized

There are many file systems available under Linux, however only a few of them can be used for a large storage array.

I am assuming that you want to create a single file system. I don't care if you use LVM or other layers beneath, this is about which file system to use.

I will discuss each file system in short.

  • EXT3

Old and trusted. but slow, wastes tremendous amounts of free space and has an 16 TB limit. Not recommended. At 16 TB, you will lose significant amounts of free space.

  • JFS

Developed by IBM, it seems an ok file system and it supports 16+ TB file systems. However it is abandoned by IBM and does not seem to have a future. The reason I did not choose JFS is because it does not seem to be in wide spread use and therefore, and I do not want to take any risk in this regard. I might encounter some rare bug because I would be one of the few Linux jfs users that creates 16+ TB file systems.

  • XFS

A file systems that works. Supports 16+ TB file systems and is widely used. It has some drawbacks, such as data loss (files are zeroed) when something goes wrong (powerloss) however, nobody that is interested in creating a large filesystem is going to run the box without a UPS.

  • Reiserfs

The guy who designed and wrote it is in jail for killing his wife. Not much future here, i suppose. Also, it does not support file systems bigger than 16 TB.

  • Reiser4

Some new version of Reiserfs which is still not available as part of a stable Linux kernel.

  • EXT4

Ext3 upgraded to current days need, although with a draw back. On paper, it supports 16 TB+

file system, but currently, in practice, it does not. I found out the hard way and had to reformat my array with another file system.

My choice:

Honestly, there is not much of an option currently under Linux other than XFS. In the past, I had some quirks with file names that contained strange characters causing trouble. However, I never lost any data whatsoever.

Currently, what I'm really hoping for is ZFS for Linux or a stable version of btrfs. These are truly modern day file systems with support for snapshots, etc. But this is still a dream. Until then, I will stick with XFS.