FSTAB(5) File Formats FSTAB(5)
fstab – static information about the filesystems
The file fstab contains descriptive information about the filesystems
the system can mount. fstab is only read by programs, and not written;
it is the duty of the system administrator to properly create and main‐
tain this file. The order of records in fstab is important because
fsck(8), mount(8), and umount(8) sequentially iterate through fstab
doing their thing.
Each filesystem is described on a separate line. Fields on each line
are separated by tabs or spaces. Lines starting with ‘#’ are comments.
Blank lines are ignored.
The following is a typical example of an fstab entry:
LABEL=t-home2 /home ext4 defaults,auto_da_alloc 0
The first field (fs_spec).
This field describes the block special device or remote filesys‐
tem to be mounted.
For ordinary mounts, it will hold (a link to) a block special
device node (as created by mknod(8)) for the device to be
mounted, like `/dev/cdrom’ or `/dev/sdb7′. For NFS mounts, this
field is :, e.g., `knuth.aeb.nl:/’. For filesystems
with no storage, any string can be used, and will show up in
df(1) output, for example. Typical usage is `proc’ for procfs;
`mem’, `none’, or `tmpfs’ for tmpfs. Other special filesystems,
like udev and sysfs, are typically not listed in fstab.
LABEL= or UUID= may be given instead of a device
name. This is the recommended method, as device names are often
a coincidence of hardware detection order, and can change when
other disks are added or removed. For example, `LABEL=Boot’ or
`UUID=3e6be9de-8139-11d1-9106-a43f08d823a6′. (Use a filesystem-
specific tool like e2label(8), xfs_admin(8), or fatlabel(8) to
set LABELs on filesystems).
It’s also possible to use PARTUUID= and PARTLABEL=. These parti‐
tions identifiers are supported for example for GUID Partition
See mount(8), blkid(8) or lsblk(8) for more details about device
Note that mount(8) uses UUIDs as strings. The string representa‐
tion of the UUID should be based on lower case characters.
The second field (fs_file).
This field describes the mount point for the filesystem. For
swap partitions, this field should be specified as `none’. If
the name of the mount point contains spaces these can be escaped
The third field (fs_vfstype).
This field describes the type of the filesystem. Linux supports
many filesystem types: ext4, xfs, btrfs, f2fs, vfat, ntfs, hfs‐
plus, tmpfs, sysfs, proc, iso9660, udf, squashfs, nfs, cifs, and
many more. For more details, see mount(8).
An entry swap denotes a file or partition to be used for swap‐
ping, cf. swapon(8). An entry none is useful for bind or move
More than one type may be specified in a comma-separated list.
mount(8) and umount(8) support filesystem subtypes. The subtype
is defined by ‘.subtype’ suffix. For example ‘fuse.sshfs’. It’s
recommended to use subtype notation rather than add any prefix
to the first fstab field (for example ‘sshfs#example.com’ is
The fourth field (fs_mntops).
This field describes the mount options associated with the
It is formatted as a comma-separated list of options. It con‐
tains at least the type of mount (ro or rw), plus any additional
options appropriate to the filesystem type (including perfor‐
mance-tuning options). For details, see mount(8) or swapon(8).
Basic filesystem-independent options are:
use default options: rw, suid, dev, exec, auto, nouser,
noauto do not mount when “mount -a” is given (e.g., at boot
user allow a user to mount
owner allow device owner to mount
or x- for use by fstab-maintaining programs
nofail do not report errors for this device if it does not
The fifth field (fs_freq).
This field is used by dump(8) to determine which filesystems
need to be dumped. Defaults to zero (don’t dump) if not
The sixth field (fs_passno).
This field is used by fsck(8) to determine the order in which
filesystem checks are done at boot time. The root filesystem
should be specified with a fs_passno of 1. Other filesystems
should have a fs_passno of 2. Filesystems within a drive will
be checked sequentially, but filesystems on different drives
will be checked at the same time to utilize parallelism avail‐
able in the hardware. Defaults to zero (don’t fsck) if not
The proper way to read records from fstab is to use the routines getmn‐
tent(3) or libmount.
The keyword ignore as a filesystem type (3rd field) is no longer sup‐
ported by the pure libmount based mount utility (since util-linux
findmnt(8), mount(8), swapon(8), fs(5), getmntent(3)
The ancestor of this fstab file format appeared in 4.0BSD.
This man page is part of the util-linux package and is available from
util-linux February 2015 FSTAB(5)