MOUNT(8)

NAME
mount - mount file systems

SYNOPSIS
mount [-Aadfruvw] [-t type]
mount [-dfruvw] {special | node}
mount [-dfruvw] [-o options] [-t type] special node

DESCRIPTION
The mount command invokes a file system-specific program to prepare and graft the special device on to the file system tree at the point node, or to update options for an already-mounted file system.

These programs are named “mount_<fstype>” where “<fstype>” refers to the file system-specific type; for example for NFS the mount program is called mount_nfs(8).

The node argument is always interpreted as a directory in the name space of currently mounted file systems. The special argument is interpreted in different ways by the programs that handle different file system types; for example, mount_ffs(8) interprets it as a device node, mount_null(8) interprets it as a directory name, mount_nfs(8) interprets it as reference to a remote host and a directory on that host, and mount_tmpfs(8) ignores it.

The system maintains a list of currently mounted file systems. This list is printed if mount is invoked with no arguments, and with no options that require some other behaviour.

If exactly one of special or node is provided, then the missing information (including the file system type) is taken from the fstab(5) file. The provided argument is looked up first in the “fs_file”, then in the “fs_spec” column. If the matching entry in fstab(5) has the string “from_mount” as its “fs_spec” field, the device or remote file system already mounted at the location specified by “fs_spec” will be used.

If both special and node are provided, then fstab(5) is not used. In this case, if the file system type is not specified via the -t flag, then mount may determine the type from the disk label (see disklabel(8)). In addition, if special contains a colon (‘’): or at sign (‘@’), then the nfs type is inferred. Otherwise, a dk(4) wedge may be referred to by its name with a special argument of the form “NAME=<value>”.

In NetBSD, the file system mounting policy is dictated by the running security models. The default security model may allow unprivileged mounting; see secmodel_suser(9) and secmodel_extensions(9) for details.

The options are as follows:

-A  Causes mount to try to mount all of the file systems listed in the fstab(5) file except those for which the “noauto” option is specified.

-a  Similar to the -A flag, except that if a file system (other than the root file system) appears to be already mounted, mount will not try to mount it again. mount assumes that a file system is already mounted if a file system with the same type is mounted on the given mount point. More stringent checks are not possible because some file system types report strange values for the mounted-from device for mounted file systems.

-d  Causes everything to be done except for the invocation of the file system-specific program. Instead what would have been invoked is printed.

-f  Forces the revocation of write access when trying to downgrade a file system mount status from read-write to read-only.

-o  Options are specified with a -o flag followed by a comma separated string of options. The following options are available:

    async
        All I/O to the file system should be done asynchronously. In the event of a crash, it is impossible for the system to verify the integrity of data on a file system mounted with this option. You should only use this option if you have an application-specific data recovery mechanism, or are willing to recreate the file system from scratch.

    noasync
        Clear async mode.

    automounted
        This flag indicates that the file system was mounted by automountd(8). Automounted file systems are automatically unmounted by autounmountd(8).

    discard
        Use DISCARD/TRIM commands if disk and driver support it.

        EXPERIMENTAL - negatively influences filesystem performance by increasing fragmentation, causes free block map inconsistency on unclean shutdown, and is incompatible with log. If log option is also used, discard is automatically disabled.

    extattr
        Enable extended attributes, if the filesystem supports them and does not enable them by default. Currently this is only the case for UFS1.

    force
        The same as -f; forces the revocation of write access when trying to downgrade a file system mount status from read-write to read-only.

    getargs
        Retrieves the file system specific mount arguments for the given mounted file system and prints them.

    hidden
        By setting the MNT_IGNORE flag, causes the mount point to be excluded from the list of file systems shown by default with df(1).

    noatime
        Never update the access time field for files. This option is useful for optimizing read performance on file systems, and avoiding excess writes on flash-based file systems.

    noauto
        This file system should be skipped when mount is run with the -a flag.

    nfsv4acls
        Enable NFSv4 ACLs, which can be customized via the setfacl(1) and getfacl(1) commands. This flag is mutually exclusive with posix1eacls flag.

    nocoredump
        Do not allow programs to create crash dumps (core files) on the file system. This option can be used to help protect sensitive data by keeping core files (which may contain sensitive data) from being created on insecure file systems. Only core files that would be created by program crashes are prevented by use of this flag; the behavior of savecore(8) is not affected.

    nodev
        Do not interpret character or block special devices on the file system. This option is useful for a server that has file systems containing special devices for architectures other than its own.

    nodevmtime
        Do not update modification times on device special files. This option is useful on laptops or other systems that perform power management.

    noexec
        Do not allow execution of any binaries on the mounted file system. This option is useful for a server that has file systems containing binaries for architectures other than its own.

    nosuid
        Do not allow set-user-identifier or set-group-identifier bits to take effect.

    port
        (NFS only) Use the specified NFS port.

    posix1eacls
        Enable POSIX.1e Access Control Lists, or ACLs, which can be customized via the setfacl(1) and getfacl(1) commands. This flag is mutually exclusive with nfsv4acls flag.

    rdonly
        The same as -r; mount the file system read-only (even the super-user may not write it).

    reload
        Reload all incore data for a file system. This is used mainly after running fsck(8) on the root file system and finding things to fix. The file system must be mounted read-only. All cached meta-data are invalidated, superblock and summary information is re-read from disk, all cached inactive vnodes and file data are invalidated and all inode data are re-read for all active vnodes.

    rump
        Instead of running “mount_<fstype>” to mount the file system, run “rump_<fstype>”. This uses a userspace server to mount the file system and does not require kernel support for the specific file system type. See the -t flag and respective rump_type manual page for more information.

    log (FFS only) Mount the file system with wapbl(4) meta-data journaling, also known simply as logging. It provides rapid metadata updates and eliminates the need to check file system consistency after a system outage. It requires the WAPBL option to be enabled in the running kernel. See wapbl(4) for more information. This option requires the “UFS2” (level 4) superblock layout, which is the default for newly created FFSv1 and FFSv2 file systems. To update an old file system with an earlier superblock format, use the -c option of fsck_ffs(8).

        log cannot be used together with discard.

        A file system mounted with log can be mounted also with async, but such filesystem behaves the same as if async was not specified - meta-data writes use the log, hence its integrity is still guaranteed.

    symperm
        Recognize permission of symbolic link when reading or traversing link.

    sync
        All I/O to the file system should be done synchronously. This is not equivalent to the normal mode in which only metadata is written synchronously.

    nosync
        Clear sync mode.

    union
        Causes the namespace at the mount point to appear as the union of the mounted file system root (referred to as the upper layer), and the existing directory (referred to as the lower layer). Name lookups will be done in the upper layer first. If a name does not exist in the upper layer, then the name will be looked up in the lower layer. If a name exists in both the upper and lower layers, then only the upper instance is accessible. Creation of new files is done in the upper layer, except in the case of the fdesc file system (see mount_fdesc(8)).

        Note that the union option can be applied to any type of file system, and is fundamentally different from mount_union(8), which is a particular type of file system. Also note that the union option affects the file system name space only at the mount point itself; it does not apply recursively to subdirectories.

    update
        The same as -u; indicate that the status of an already mounted file system should be changed.

    Any additional options specific to a given file system type (see the -t option) may be passed as a comma separated list; these options are distinguished by a leading “-” (dash). Options that take a value are specified using the syntax -option=value. For example, the mount command:

        mount -t mfs -o nosuid,-N,-s=32m swap /tmp

    causes mount to execute the equivalent of:

        /sbin/mount_mfs -o nosuid -N -s 32m swap /tmp

-r  The file system is to be mounted read-only. Mount the file system read-only (even the super-user may not write it). The same as the “rdonly” argument to the -o option.

-t type
    The argument following the -t is used to indicate the file system type. The type ffs is the default. The -t option can be used to indicate that the actions should only be taken on file systems of the specified type. More than one type may be specified in a comma separated list. The list of file system types can be prefixed with “no” to specify the file system types for which action should not be taken. For example, the mount command:

        mount -a -t nonfs,mfs

    mounts all file systems except those of type NFS and MFS.

    mount will attempt to execute a program in /sbin/mount_XXX where XXX is replaced by the type name. For example, nfs file systems are mounted by the program /sbin/mount_nfs.

-u  The -u flag indicates that the status of an already mounted file system should be changed. Any of the options discussed above (the -o option) may be changed; also a file system can be changed from read-only to read-write or vice versa. An attempt to change from read-write to read-only will fail if any files on the file system are currently open for writing unless the -f flag is also specified. The set of options is determined by first extracting the options for the file system from the fstab(5) file, then applying any options specified by the -o argument, and finally applying the -r or -w option.

-v  Verbose mode. When listing, include the file system ID and some statistics, and if -v is given more than once, any file system specific options. When mounting, show what was mounted, after it has completed. In this case, if this flag is specified more than once, then the file system-specific mount program used, and its arguments are printed, and also the file system ID and statistics.

-w  The file system object is to be read and write.

The options specific to the various file system types are described in the manual pages for those file systems' “mount_<fstype>” commands; for instance, the options specific to Berkeley Fast File System (FFS) are described in the mount_ffs(8) manual page.

The particular type of file system in each partition of a disk can be found by examining the disk label with the appropriate label command, either disklabel(8) or gpt(8).

FILES
/etc/fstab
    file system table

EXAMPLES
Some useful examples:

CD-ROM
    mount -t cd9660 -r /dev/cd0a /cdrom

MS-DOS
    mount -t msdos /dev/fd0a /floppy

NFS mount -t nfs nfs-server-host:/directory/path /mount-point

MFS (32 megabyte)
    mount -t mfs -o nosuid,-s=32m swap /tmp

The “noauto” directive in /etc/fstab can be used to make it easy to manually mount and unmount removable media using just the mountpoint filename, with an entry like this:

    /dev/cd0a /cdrom cd9660 ro,noauto 0 0

That would allow a simple command like "mount /cdrom" or "umount /cdrom" for media using the ISO-9660 file system format in the first CD-ROM drive.

DIAGNOSTICS
The error “Operation not supported by device” indicates that the mount for the specified file system type cannot be completed because the kernel lacks support for the said file system. See options(4).

The error “Operation not permitted” may indicate that the mount options include privileged options and/or do not include options that exclude privileged options. One should try using at least “nodev” and “nosuid” in such cases:

    mount -t cd9660 -o nodev,nosuid /dev/cd0a /mnt

SEE ALSO
df(1), getfacl(1), setfacl(1), mount(2), acl(3), getmntinfo(3), options(4), wapbl(4), fstab(5), automount(8), automountd(8), autounmountd(8), disklabel(8), fsck(8), gpt(8), mount_ados(8), mount_cd9660(8), mount_chfs(8), mount_ext2fs(8), mount_fdesc(8), mount_ffs(8), mount_filecore(8), mount_kernfs(8), mount_lfs(8), mount_mfs(8), mount_msdos(8), mount_nfs(8), mount_ntfs(8), mount_null(8), mount_overlay(8), mount_portal(8), mount_procfs(8), mount_tmpfs(8), mount_udf(8), mount_umap(8), mount_union(8), rump_cd9660(8), rump_efs(8), rump_ext2fs(8), rump_ffs(8), rump_hfs(8), rump_lfs(8), rump_msdos(8), rump_nfs(8), rump_ntfs(8), rump_sysvbfs(8), rump_tmpfs(8), rump_udf(8), umount(8)

HISTORY
A mount command appeared in AT&T UNIX.