Table of Contents

File Systems

FAQ

Which file system should I use?

If you ask this question, probably the one which is default for your distribution or ext4.

Some good file systems and their usage:

ext4 root, data
btrfs redundant data, file servers
zfs redundant data, file servers
xfs root, data
f2fs flash storage
glusterfs computer clusters
ntfs shared storage with windows (slow, because fuse)

There's an error "out of space" but I still have space!

Could be that you ran out of inodes. Check with df -i.

xfs

get label1 xfs_admin -l /dev/sdb1
change label xfs_admin -L NEWLABEL /dev/mapper/NAME

empty space is still recoverable!

SSDs do garbage collection differently, which is why dd if=/dev/true or scrub don't work properly.

ext4

init ext4 inodes on mkfs

lazy inode init makes the drive behave slowly on first mount

mkfs.ext4 -E lazy_itable_init=0,lazy_journal_init=0 /dev/sdXY

directory index for a huge amount of files

Huge amount = >300k

mount with dir_index

if the error EXT4-fs warning (device /dev/sdx): ext4_dx_add_entry: Directory index full! occurs, you probably have more than 2 million files in one directory, check with

$ cd /var/
$ debugfs
debugfs> open /dev/sdd1
debugfs> cd log/
debugfs> htree .
[...]
Number of Entries (count): 508
Number of Entries (limit): 508
[...]

and remedy with fsck.ext4 -yfD /dev/sdx1

(source)

NTFS

For interoperability with Windows; is mounted with FUSE and therefore pretty slow.

Use mount options fmask=117,dmask=007 so the executable bit isn't set on everything.

exFAT

UDF