それぞれのファイルシステムは一行単位で記述され、 各行のフィールドは TAB 文字もしくは空白 (spaces) で区切られる。 '#' で始まる行はコメントである。 空行は無視される。
以下は典型的な fstab のエントリの例である:
最初のフィールド (fs_spec).
通常のマウントでは、これはマウントされるブロックスペシャルデバイス ノード (またはそれへのリンク) である。 これは mknod(8) によって作成される。 例えば `/dev/cdrom' や `/dev/sdb7' といったものになる。 NFS マウントの場合は <host>:<dir> という書式になる。 例えば `knuth.aeb.nl:/' などである。 ストレージのないファイルシステムについて、任意の文字列を使うことが できて、例えば df(1) の出力に表示される。 通常、procfs には `proc'、 tmpfs には `mem', `none', `tmpfs' が使われる。 udev や sysfs といったその他の特殊なファイルシステムは、通常、 fstab にはリストされない。
デバイス名の代わりに、LABEL=<label> または UUID=<uuid> を指定することができる。 これは、ディスクを追加または削除した際に、デバイス名が ハードウェアの検知順になって、変更される場合に、 推奨される方法である。 例:`LABEL=Boot' または `UUID=3e6be9de-8139-11d1-9106-a43f08d823a6'。 (ファイルシステムの LABEL を設定するには、 e2label(8), xfs_admin(8), fatlabel(8) のようなファイルシステム独自のツールを使うこと)。
PARTUUID= と PARTLABEL= を使うこともできる。 これらのパーティション識別子は、例えば、GUID パーティションテーブル (GPT) をサポートする。
デバイス識別子の詳細は、 mount(8), blkid(8) lsblk(8) を参照すること。
mount(8) は UUID を文字列として使う。 UUID の文字列表現は小文字をベースとするべきである。
2 番目のフィールド (fs_file).
3 番目のフィールド (fs_vfstype).
エントリ swap はスワップに使われるファイルまたはパーティションを表す。 swapon(8) を参照。 mount 先をバインドしたり移動したりするために、エントリ none が役に立つ。
1 つ以上のファイルシステムタイプをカンマ区切りのリストで指定できる。
mount(8) と umount(8) はファイルシステム subtype をサポートする。 サブタイプは '.subtype' サフィックスで定義される。 例えば 'fuse.sshfs' である。 最初の fstab フィールドにプレフィックスを追加するより、 サブタイプの記法を使う方が推奨される (例えば、 'sshfs#example.com' という記法は廃止されている)。
4 番目のフィールド (fs_mntops).
これはカンマで区切られたオプションのリストである。 少なくともマウントのタイプ (ro または rw) を書く必要がある。 加えて (パフォーマンスチューニングオプションを含む) ファイルシステムのタイプに応じた 適切なオプションが書かれていることが多い。 詳細は mount(8) または swapon(8) を参照のこと。
基本的なファイルシステムに依存しないオプションは以下のとおり:
5 番目のフィールド (fs_freq).
6 番目のフィールド (fs_passno).
キーワード ignore はファイルシステムタイプ (3 番目のフィールド) として、 純粋な libmount ベースのマウントユーティリティでは (util-linux v2.22 以降では) サポートされていない。