FINDMNT(8) System Administration FINDMNT(8)

findmnt - find a filesystem

findmnt [options]

findmnt [options] device|mountpoint

findmnt [options] [--source] device [--target path|--mountpoint mountpoint]

findmnt will list all mounted filesystems or search for a filesystem. The findmnt command is able to search in /etc/fstab, /etc/mtab or /proc/self/mountinfo. If device or mountpoint is not given, all filesystems are shown.

The device may be specified by device name, major:minor numbers, filesystem label or UUID, or partition label or UUID. Note that findmnt follows mount(8) behavior where a device name may be interpreted as a mountpoint (and vice versa) if the --target, --mountpoint or --source options are not specified.

The command-line option --target accepts any file or directory and then findmnt displays the filesystem for the given path.

The command prints all mounted filesystems in the tree-like format by default. The default output, is subject to change. So whenever possible, you should avoid using default output in your scripts. Always explicitly define expected columns by using --output columns-list in environments where a stable output is required.

The relationship between block devices and filesystems is not always one-to-one. The filesystem may use more block devices. This is why findmnt provides SOURCE and SOURCES (pl.) columns. The column SOURCES displays all devices where it is possible to find the same filesystem UUID (or another tag specified in fstab when executed with --fstab and --evaluate).

-A, --all

Disable all built-in filters and print all filesystems.

-a, --ascii

Use ascii characters for tree formatting.

-b, --bytes

Print the sizes in bytes rather than in a human-readable format.

By default, the unit, sizes are expressed in, is byte, and unit prefixes are in power of 2^10 (1024). Abbreviations of symbols are exhibited truncated in order to reach a better readability, by exhibiting alone the first letter of them; examples: "1 KiB" and "1 MiB" are respectively exhibited as "1 K" and "1 M", then omitting on purpose the mention "iB", which is part of these abbreviations.

-C, --nocanonicalize

Do not canonicalize paths at all. This option affects the comparing of paths and the evaluation of tags (LABEL, UUID, etc.).

-c, --canonicalize

Canonicalize all printed paths.

-D, --df

Imitate the output of df(1). This option is equivalent to -o SOURCE,FSTYPE,SIZE,USED,AVAIL,USE%,TARGET but excludes all pseudo filesystems. Use --all to print all filesystems. See also -I, --dfi options.

-d, --direction word

The search direction, either forward or backward.

-e, --evaluate

Convert all tags (LABEL, UUID, PARTUUID, or PARTLABEL) to the corresponding device names for the SOURCE column. It’s an unusual situation, but the same tag may be duplicated (used for more devices). For this purpose, there is SOURCES (pl.) column. This column displays by multi-line cell all devices where the tag is detected by libblkid. This option makes sense for fstab only.

-F, --tab-file path

Search in an alternative file. If used with --fstab, --mtab or --kernel, then it overrides the default paths. If specified more than once, then tree-like output is disabled (see the --list option).

-f, --first-only

Print the first matching filesystem only.

-H, --list-columns

List the available columns, use with --json or --raw to get output in machine-readable format.

-I, --dfi

Imitate the output of df(1) with its -i option. This option is equivalent to -o SOURCE,FSTYPE,INO.TOTAL,INO.USED,INO.AVAIL,INO.USE%,TARGET but excludes all pseudo filesystems. Use --all to print all filesystems.

-i, --invert

Invert the sense of matching.

-J, --json

Use JSON output format.

-k, --kernel

Search in /proc/self/mountinfo. The output is in the tree-like format. This is the default. The output contains only mount options maintained by kernel (see also --mtab).

-l, --list

Use the list output format. This output format is automatically enabled if the output is restricted by the -t, -O, -S or -T option and the option --submounts is not used or if more that one source file (the option -F) is specified.

-M, --mountpoint path

Explicitly define the mountpoint file or directory. See also --target.

-m, --mtab

Search in /etc/mtab. The output is in the list format by default (see --tree). The output may include user space mount options.

-N, --task tid

Use alternative namespace /proc/<tid>/mountinfo rather than the default /proc/self/mountinfo. If the option is specified more than once, then tree-like output is disabled (see the --list option). See also the unshare(1) command.

-n, --noheadings

Do not print a header line.

-O, --options list

Limit the set of printed filesystems. More than one option may be specified in a comma-separated list. The -t and -O options are cumulative in effect. It is different from -t in that each option is matched exactly; a leading no at the beginning does not have global meaning. The "no" can used for individual items in the list. The "no" prefix interpretation can be disabled by "+" prefix.

-o, --output list

Define output columns. See the --help output to get a list of the currently supported columns. The TARGET column contains tree formatting if the --list or --raw options are not specified.

The default list of columns may be extended if list is specified in the format +list (e.g., findmnt -o +PROPAGATION).

--output-all

Output almost all available columns. The columns that require --poll are not included.

-P, --pairs

Produce output in the form of key="value" pairs. All potentially unsafe value characters are hex-escaped (\x<code>). See also option --shell.

Note that SOURCES column, use multi-line cells. In these cases, the column use an array-like formatting in the output, for example name=("aaa" "bbb" "ccc").

-p, --poll[=list]

Monitor changes in the /proc/self/mountinfo file. Supported actions are: mount, umount, remount and move. More than one action may be specified in a comma-separated list. All actions are monitored by default.

The time for which --poll will block can be restricted with the --timeout or --first-only options.

The standard columns always use the new version of the information from the mountinfo file, except the umount action which is based on the original information cached by findmnt. The poll mode allows using extra columns:

ACTION

mount, umount, move or remount action name; this column is enabled by default

OLD-TARGET

available for umount and move actions

OLD-OPTIONS

available for umount and remount actions

--pseudo

Print only pseudo filesystems.

--shadow

Print only filesystems over-mounted by another filesystem.

-R, --submounts

Print recursively all submounts for the selected filesystems. The restrictions defined by options -t, -O, -S, -T and --direction are not applied to submounts. All submounts are always printed in tree-like order. The option enables the tree-like output format by default. This option has no effect for --mtab or --fstab.

-r, --raw

Use raw output format. All potentially unsafe characters are hex-escaped (\x<code>).

Note that column SOURCES, use multi-line cells. In these cases, the column may produce more strings on the same line.

--real

Print only real filesystems.

-S, --source spec

Explicitly define the mount source. Supported specifications are device, maj:min, LABEL=label, UUID=uuid, PARTLABEL=label and PARTUUID=uuid.

-s, --fstab

Search in /etc/fstab. The output is in the list format (see --list).

-T, --target path

Define the mount target. If path is not a mountpoint file or directory, then findmnt checks the path elements in reverse order to get the mountpoint (this feature is supported only when searching in kernel files and unsupported for --fstab). It’s recommended to use the option --mountpoint when checks of path elements are unwanted and path is a strictly specified mountpoint.

-t, --types list

Limit the set of printed filesystems. More than one type may be specified in a comma-separated list. The list of filesystem types can be prefixed with no to specify the filesystem types on which no action should be taken. For more details see mount(8).

--tree

Enable tree-like output if possible. The options is silently ignored for tables where is missing child-parent relation (e.g., fstab).

--shadowed

Print only filesystems over-mounted by another filesystem.

-U, --uniq

Ignore filesystems with duplicate mount targets, thus effectively skipping over-mounted mount points.

-u, --notruncate

Do not truncate text in columns. The default is to not truncate the TARGET, SOURCE, UUID, LABEL, PARTUUID, PARTLABEL columns. This option disables text truncation also in all other columns.

-v, --nofsroot

Do not print a [/dir] in the SOURCE column for bind mounts or btrfs subvolumes.

-w, --timeout milliseconds

Specify an upper limit on the time for which --poll will block, in milliseconds.

-x, --verify

Check mount table content. The default is to verify /etc/fstab parsability and usability. It’s possible to use this option also with --tab-file. It’s possible to specify source (device) or target (mountpoint) to filter mount table. The option --verbose forces findmnt to print more details.

--verbose

Force findmnt to print more information (--verify only for now).

--vfs-all

When used with VFS-OPTIONS column, print all VFS (fs-independent) flags. This option is designed for auditing purposes to list also default VFS kernel mount options which are normally not listed.

-y, --shell

The column name will be modified to contain only characters allowed for shell variable identifiers. This is usable, for example, with --pairs. Note that this feature has been automatically enabled for --pairs in version 2.37, but due to compatibility issues, now it’s necessary to request this behavior by --shell.

-h, --help

Display help text and exit.

-V, --version

Print version and exit.

The exit value is 0 if there is something to display, or 1 on any error (for example if no filesystem is found based on the user’s filter specification, or the device path or mountpoint does not exist).

LIBMOUNT_FSTAB=<path>

overrides the default location of the fstab file

LIBMOUNT_MTAB=<path>

overrides the default location of the mtab file

LIBMOUNT_DEBUG=all

enables libmount debug output

LIBSMARTCOLS_DEBUG=all

enables libsmartcols debug output

LIBSMARTCOLS_DEBUG_PADDING=on

use visible padding characters.

findmnt --fstab -t nfs

Prints all NFS filesystems defined in /etc/fstab.

findmnt --fstab /mnt/foo

Prints all /etc/fstab filesystems where the mountpoint directory is /mnt/foo. It also prints bind mounts where /mnt/foo is a source.

findmnt --fstab --target /mnt/foo

Prints all /etc/fstab filesystems where the mountpoint directory is /mnt/foo.

findmnt --fstab --evaluate

Prints all /etc/fstab filesystems and converts LABEL= and UUID= tags to the real device names.

findmnt -n --raw --evaluate --output=target LABEL=/boot

Prints only the mountpoint where the filesystem with label "/boot" is mounted.

findmnt --poll --mountpoint /mnt/foo

Monitors mount, unmount, remount and move on /mnt/foo.

findmnt --poll=umount --first-only --mountpoint /mnt/foo

Waits for /mnt/foo unmount.

findmnt --poll=remount -t ext3 -O ro

Monitors remounts to read-only mode on all ext3 filesystems.

Karel Zak <kzak@redhat.com>

fstab(5), mount(8)

For bug reports, use the issue tracker at https://github.com/util-linux/util-linux/issues.

The findmnt command is part of the util-linux package which can be downloaded from Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.

2024-07-04 util-linux 2.40.2