MOUNT(8) Linux Programmer's Manual MOUNT(8)

NAME

mount - mount a file system

SYNOPSIS

mount [-lhV]

mount -a [-fFnrsvw] [-t vfstype] [-O optlist]

mount [-fnrsvw] [-o options [,...]] device | dir

mount [-fnrsvw] [-t vfstype] [-o options] device dir

DESCRIPTION

       All files accessible in a Unix system are arranged in one big tree, the
       file hierarchy, rooted at /.  These files can be spread out  over  sev‐
       eral  devices. The mount command serves to attach the file system found
       on some device to the big file tree. Conversely, the umount(8)  command
       will detach it again.

       The standard form of the mount command, is

              mount -t type device dir

       This  tells the kernel to attach the file system found on device (which
       is of type type) at the directory dir.  The previous contents (if  any)
       and  owner  and  mode of dir become invisible, and as long as this file
       system remains mounted, the pathname dir refers to the root of the file
       system on device.

       The listing and help.
              Three forms of invocation do not actually mount anything:

              mount -h
                     prints a help message

              mount -V
                     prints a version string

              mount [-l] [-t type]
                     lists  all  mounted  file  systems  (of  type type).  The
                     option -l adds the labels in this listing.  See below.

       The bind mounts.
              Since Linux 2.4.0 it is possible to remount  part  of  the  file
              hierarchy somewhere else. The call is
                     mount --bind olddir newdir
              or shortoption
                     mount -B olddir newdir
              or fstab entry is:
                     /olddir  /newdir  none  bind

              After  this  call the same contents is accessible in two places.
              One can also remount a single file (on a single file).

              This call attaches only (part of) a single filesystem, not  pos‐
              sible  submounts.  The entire file hierarchy including submounts
              is attached a second place using
                     mount --rbind olddir newdir
              or shortoption
                     mount -R olddir newdir

              Note that the filesystem mount options will remain the  same  as
              those  on  the  original  mount  point, and cannot be changed by
              passing the -o option along with --bind/--rbind.

       The move operation.
              Since Linux 2.5.1 it is possible to atomically  move  a  mounted
              tree to another place. The call is
                     mount --move olddir newdir
              or shortoption
                     mount -M olddir newdir

       The shared subtrees operations.
              Since  Linux  2.6.15 it is possible to mark a mount and its sub‐
              mounts as shared, private, slave or unbindable. A  shared  mount
              provides  ability  to  create  mirrors  of  that mount such that
              mounts and umounts within any of the mirrors  propagate  to  the
              other  mirror.  A slave mount receives propagation from its mas‐
              ter, but any not vice-versa.  A private mount carries no  propa‐
              gation  abilities.   A unbindable mount is a private mount which
              cannot cloned through a bind operation.  Detailed  semantics  is
              documented in Documentation/sharedsubtree.txt file in the kernel
              source tree.

                     mount --make-shared mountpoint
                     mount --make-slave mountpoint
                     mount --make-private mountpoint
                     mount --make-unbindable mountpoint

              The following commands allows one to recursively change the type
              of all the mounts under a given mountpoint.

                     mount --make-rshared mountpoint
                     mount --make-rslave mountpoint
                     mount --make-rprivate mountpoint
                     mount --make-runbindable mountpoint

       The device indication.
              Most  devices  are  indicated by a file name (of a block special
              device), like /dev/sda1, but there are other possibilities.  For
              example,  in  the  case  of  an  NFS mount, device may look like
              knuth.cwi.nl:/dir.  It is possible to indicate a  block  special
              device using its volume LABEL or UUID (see the -L and -U options
              below).

              The device indication.
                     Most devices are indicated by a file  name  (of  a  block
                     special device), like /dev/sda1, but there are other pos‐
                     sibilities. For example, in the case  of  an  NFS  mount,
                     device  may  look like knuth.cwi.nl:/dir.  It is possible
                     to indicate a block special device using its volume LABEL
                     or UUID (see the -L and -U options below).

                     The  proc  file  system  is not associated with a special
                     device, and when mounting it, an arbitrary keyword,  such
                     as  proc  can  be used instead of a device specification.
                     (The customary choice none is less fortunate:  the  error
                     message `none busy' from umount can be confusing.)

              The /etc/fstab, /etc/mtab and /proc/mounts files.
                     The  file  /etc/fstab  (see  fstab(5)), may contain lines
                     describing what devices are usually mounted where,  using
                     which options.

                     The command

                            mount -a [-t type] [-O optlist]

                     (usually  given  in a bootscript) causes all file systems
                     mentioned in fstab (of the proper type and/or  having  or
                     not  having  the  proper  options) to be mounted as indi‐
                     cated, except for those whose line  contains  the  noauto
                     keyword.  Adding  the  -F option will make mount fork, so
                     that the filesystems are mounted simultaneously.

                     When mounting a file system mentioned in fstab,  it  suf‐
                     fices to give only the device, or only the mount point.

                     The  programs  mount  and  umount maintain a list of cur‐
                     rently mounted file systems in the file /etc/mtab.  If no
                     arguments are given to mount, this list is printed.

                     When  the  proc filesystem is mounted (say at /proc), the
                     files /etc/mtab and /proc/mounts have very  similar  con‐
                     tents.  The former has somewhat more information, such as
                     the mount options used, but is not necessarily up-to-date
                     (cf.  the  -n  option  below).  It is possible to replace
                     /etc/mtab by a symbolic link to /proc/mounts,  and  espe‐
                     cially  when you have very large numbers of mounts things
                     will be much faster with that symlink, but some  informa‐
                     tion is lost that way, and in particular working with the
                     loop device will be less convenient, and using the "user"
                     option will fail.

              The non-superuser mounts.
                     Normally,  only  the  superuser  can  mount file systems.
                     However, when fstab contains the user option on  a  line,
                     anybody can mount the corresponding system.

                     Thus, given a line

                            /dev/cdrom  /cd  iso9660  ro,user,noauto,unhide

                     any  user  can mount the iso9660 file system found on his
                     CDROM using the command

                            mount /dev/cdrom

                     or

                            mount /cd

                     For more details,  see  fstab(5).   Only  the  user  that
                     mounted  a  filesystem can unmount it again.  If any user
                     should be able to unmount, then use users instead of user
                     in  the  fstab  line.  The owner option is similar to the
                     user option, with the restriction that the user  must  be
                     the  owner  of  the special file. This may be useful e.g.
                     for /dev/fd if a login  script  makes  the  console  user
                     owner  of this device.  The group option is similar, with
                     the restriction that the user must be member of the group
                     of the special file.

COMMAND LINE OPTIONS

       The  full set of mount options used by an invocation of mount is deter‐
       mined by first extracting the mount options for the  file  system  from
       the  fstab  table,  then applying any options specified by the -o argu‐
       ment, and finally applying a -r or -w option, when present.

       Command line options available for the mount command:

       -V     Output version.

       -h     Print a help message.

       -v     Verbose mode.

       -a     Mount all filesystems (of the given types) mentioned in fstab.

       -F     (Used in conjunction with -a.)  Fork off a  new  incarnation  of
              mount  for  each  device.   This will do the mounts on different
              devices or different NFS servers  in  parallel.   This  has  the
              advantage that it is faster; also NFS timeouts go in parallel. A
              disadvantage is that the mounts are  done  in  undefined  order.
              Thus,  you cannot use this option if you want to mount both /usr
              and /usr/spool.

       -f     Causes everything to be done except for the actual system  call;
              if  it's  not  obvious, this ``fakes'' mounting the file system.
              This option is useful in conjunction with the -v flag to  deter‐
              mine what the mount command is trying to do. It can also be used
              to add entries for devices that were mounted earlier with the -n
              option.  The  -f  option checks for existing record in /etc/mtab
              and fails when the record already exists (with regular  non-fake
              mount, this check is done by kernel).

       -i     Don't  call  the  /sbin/mount.<filesystem>  helper  even  if  it
              exists.

       -l     Add the labels in the mount output. Mount must  have  permission
              to  read  the  disk device (e.g. be suid root) for this to work.
              One can set such a label  for  ext2,  ext3  or  ext4  using  the
              e2label(8)  utility, or for XFS using xfs_admin(8), or for reis‐
              erfs using reiserfstune(8).

       -n     Mount without writing in /etc/mtab.  This is necessary for exam‐
              ple when /etc is on a read-only file system.

       -p num In  case  of  a  loop mount with encryption, read the passphrase
              from file descriptor num instead of from the terminal.

       -s     Tolerate sloppy mount options rather  than  failing.  This  will
              ignore mount options not supported by a filesystem type. Not all
              filesystems support this option. This option exists for  support
              of the Linux autofs-based automounter.

       -r     Mount the file system read-only. A synonym is -o ro.

              Note  that,  depending  on the filesystem type, state and kernel
              behavior, the system may still write to the device. For example,
              Ext3 or ext4 will replay its journal if the filesystem is dirty.
              To prevent this kind of write access, you may want to mount ext3
              or  ext4  filesystem  with  "ro,noload" mount options or set the
              block device to read-only mode, see command blockdev(8)

       -w     Mount the file system read/write. This is the default. A synonym
              is -o rw.

       -L label
              Mount the partition that has the specified label.

       -U uuid
              Mount  the  partition  that  has  the specified uuid.  These two
              options require the file /proc/partitions (present  since  Linux
              2.1.116) to exist.

       -t vfstype
              The  argument following the -t is used to indicate the file sys‐
              tem type.  The file system types which are  currently  supported
              include:  adfs,  affs,  autofs,  cifs,  coda,  coherent, cramfs,
              debugfs, devpts, efs, ext, ext2, ext3, ext4, hfs, hfsplus, hpfs,
              iso9660,  jfs, minix, msdos, ncpfs, nfs, nfs4, ntfs, proc, qnx4,
              ramfs, reiserfs, romfs, smbfs, sysv, tmpfs,  udf,  ufs,  umsdos,
              usbfs,  vfat,  xenix,  xfs, xiafs.  Note that coherent, sysv and
              xenix are equivalent and that xenix and coherent will be removed
              at  some  point  in  the future — use sysv instead. Since kernel
              version 2.1.21 the types ext and xiafs  do  not  exist  anymore.
              Earlier,  usbfs  was  known as usbdevfs.  Note, the real list of
              all supported filesystems depends on your kernel.

              For most types all the mount program has to do is issue a simple
              mount(2)  system call, and no detailed knowledge of the filesys‐
              tem type is required.  For a few types however (like nfs,  nfs4,
              cifs,  smbfs,  ncpfs)  ad  hoc code is necessary. The nfs, nfs4,
              cifs, smbfs, and ncpfs have a separate mount program.  In  order
              to  make  it possible to treat all types in a uniform way, mount
              will execute the program /sbin/mount.TYPE (if that exists)  when
              called  with  type TYPE.  Since various versions of the smbmount
              program have different  calling  conventions,  /sbin/mount.smbfs
              may have to be a shell script that sets up the desired call.

              If  no  -t  option  is  given, or if the auto type is specified,
              mount will try to guess the desired type.  Mount uses the  blkid
              or  volume_id  library for guessing the filesystem type; if that
              does not turn up anything that looks familiar, mount will try to
              read  the  file  /etc/filesystems,  or,  if that does not exist,
              /proc/filesystems.  All of the  filesystem  types  listed  there
              will  be tried, except for those that are labeled "nodev" (e.g.,
              devpts, proc and nfs).  If /etc/filesystems ends in a line  with
              a single * only, mount will read /proc/filesystems afterwards.

              The auto type may be useful for user-mounted floppies.  Creating
              a file /etc/filesystems can be useful to change the probe  order
              (e.g.,  to  try vfat before msdos or ext3 before ext2) or if you
              use a kernel module autoloader.  Warning:  the  probing  uses  a
              heuristic  (the presence of appropriate `magic'), and could rec‐
              ognize the wrong filesystem  type,  possibly  with  catastrophic
              consequences.  If  your  data  is  valuable,  don't ask mount to
              guess.

              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 on which no action should be taken.  (This
              can be meaningful with the -a option.)

              For example, the command:
              mount -a -t nomsdos,ext
       mounts all file systems except those of type msdos and ext.

       -O     Used  in conjunction with -a, to limit the set of filesystems to
              which the -a is applied.  Like -t in this regard except that  it
              is  useless  except in the context of -a.  For example, the com‐
              mand:

              mount -a -O no_netdev

       mounts all file systems except those  which  have  the  option  _netdev
       specified in the options field in the /etc/fstab file.

       It is different from -t in that each option is matched exactly; a lead‐
       ing no at the beginning of one option does not negate the rest.

       The -t and -O options are cumulative in effect; that is, the command

              mount -a -t ext2 -O _netdev

       mounts all ext2 filesystems with the _netdev option, not  all  filesys‐
       tems that are either ext2 or have the _netdev option specified.

       -o     Options  are  specified with a -o flag followed by a comma sepa‐
              rated string of options. For example:
                     mount LABEL=mydisk -o noatime,nouser

              For more details, see FILESYSTEM INDEPENDENT MOUNT  OPTIONS  and
              FILESYSTEM SPECIFIC MOUNT OPTIONS sections.

       -B, --bind
              Remount  a  subtree  somewhere  else  (so  that its contents are
              available in both places). See above.

       -R, --rbind
              Remount a subtree and all possible submounts somewhere else  (so
              that its contents are available in both places). See above.

       -M, --move
              Move a subtree to some other place. See above.

FILESYSTEM INDEPENDENT MOUNT OPTIONS

       Some  of  these  options  are  only  useful  when  they  appear  in the
       /etc/fstab file.

       Some of these options could be enabled or disabled by  default  in  the
       system  kernel.  To  check  the  current  setting  see  the  options in
       /proc/mounts.

       The following options apply to any file system that  is  being  mounted
       (but not every file system actually honors them - e.g., the sync option
       today has effect only for ext2, ext3, fat, vfat and ufs):

       async  All I/O to the file system should be done  asynchronously.  (See
              also the sync option.)

       atime  Update inode access time for each access. This is the default.

       noatime
              Do  not  update inode access times on this file system (e.g, for
              faster access on the news spool to speed up news servers).

       auto   Can be mounted with the -a option.

       noauto Can only be mounted explicitly (i.e., the  -a  option  will  not
              cause the file system to be mounted).

       context=context,  fscontext=context,  defcontext=context  and  rootcon�‐
       text=context
              The context= option is useful when mounting filesystems that  do
              not  support  extended attributes, such as a floppy or hard disk
              formatted with VFAT, or systems that are  not  normally  running
              under SELinux, such as an ext3 formatted disk from a non-SELinux
              workstation. You can also use context= on filesystems you do not
              trust,  such  as  a  floppy. It also helps in compatibility with
              xattr-supporting filesystems on earlier 2.4.<x> kernel versions.
              Even where xattrs are supported, you can save time not having to
              label every file by assigning the entire disk one security  con‐
              text.

              A  commonly  used  option  for  removable  media is context=sys�‐
              tem_u:object_r:removable_t.

              Two other options are fscontext= and defcontext=, both of  which
              are mutually exclusive of the context option. This means you can
              use fscontext and defcontext with each other, but neither can be
              used with context.

              The  fscontext=  option works for all filesystems, regardless of
              their xattr support. The fscontext option sets  the  overarching
              filesystem label to a specific security context. This filesystem
              label is separate from the individual labels on  the  files.  It
              represents the entire filesystem for certain kinds of permission
              checks, such as during mount or file creation.  Individual  file
              labels  are  still  obtained  from the xattrs on the files them‐
              selves. The context option actually sets the  aggregate  context
              that fscontext provides, in addition to supplying the same label
              for individual files.

              You can set the default security  context  for  unlabeled  files
              using defcontext= option. This overrides the value set for unla‐
              beled files in the policy and requires a file system  that  sup‐
              ports xattr labeling.

              The  rootcontext= option allows you to explicitly label the root
              inode of a FS being mounted before that FS or inode because vis‐
              able  to  userspace. This was found to be useful for things like
              stateless linux.

              For more details, see selinux(8)

       defaults
              Use default options: rw, suid,  dev,  exec,  auto,  nouser,  and
              async.

       dev    Interpret character or block special devices on the file system.

       nodev  Do  not interpret character or block special devices on the file
              system.

       diratime
              Update directory inode access times on this filesystem. This  is
              the default.

       nodiratime
              Do not update directory inode access times on this filesystem.

       dirsync
              All directory updates within the file system should be done syn‐
              chronously.  This affects the  following  system  calls:  creat,
              link, unlink, symlink, mkdir, rmdir, mknod and rename.

       exec   Permit execution of binaries.

       noexec Do  not  allow  direct  execution of any binaries on the mounted
              file system.  (Until recently it was possible  to  run  binaries
              anyway  using a command like /lib/ld*.so /mnt/binary. This trick
              fails since Linux 2.4.25 / 2.6.0.)

       group  Allow an ordinary (i.e., non-root) user to mount the file system
              if  one  of  his  groups  matches the group of the device.  This
              option implies the options nosuid and nodev  (unless  overridden
              by subsequent options, as in the option line group,dev,suid).

       encryption
              Specifies  an  encryption algorithm to use.  Used in conjunction
              with the loop option.

       keybits
              Specifies the key size to use for an encryption algorithm.  Used
              in  conjunction with the loop and encryption options.  nofail Do
              not report errors for this device if it does not  exist.   iver�‐
              sion  Every time the inode is modified, the i_version field will
              be incremented.

       noiversion
              Do not increment the i_version inode field.

       mand   Allow mandatory locks on this filesystem. See fcntl(2).

       nomand Do not allow mandatory locks on this filesystem.

       _netdev
              The filesystem resides on a device that requires network  access
              (used  to  prevent  the  system  from  attempting to mount these
              filesystems until the network has been enabled on the system).

       nofail Do not report errors for this device if it does not exist.

       relatime
              Update inode access times relative to  modify  or  change  time.
              Access time is only updated if the previous access time was ear‐
              lier than the current modify or change time. (Similar  to  noat‐
              ime,  but  doesn't break mutt or other applications that need to
              know if a file has been read since the last time  it  was  modi‐
              fied.)

       norelatime
              Do  not use relatime feature (e.g, for systems where the feature
              is enabled by default, for more details  see  mount  options  in
              /proc/mounts).

       strictatime
              Update  inode access times whenever a file is accessed. Disables
              noatime and relatime.

       nostrictatime
              Use  the  kernel's  default  behaviour  for  inode  access  time
              updates.

       suid   Allow  set-user-identifier  or set-group-identifier bits to take
              effect.

       nosuid Do not allow set-user-identifier or set-group-identifier bits to
              take  effect.  (This seems safe, but is in fact rather unsafe if
              you have suidperl(1) installed.)

       owner  Allow an ordinary (i.e., non-root) user to mount the file system
              if  he  is  the  owner  of  the device.  This option implies the
              options  nosuid  and  nodev  (unless  overridden  by  subsequent
              options, as in the option line owner,dev,suid).

       remount
              Attempt to remount an already-mounted file system.  This is com‐
              monly used to change the mount flags for a  file  system,  espe‐
              cially  to  make  a  readonly file system writeable. It does not
              change device or mount point.

              The remount functionality follows the standard way how the mount
              command  works  with options from fstab. It means the mount com‐
              mand doesn't read fstab (or mtab) only when a device and dir are
              fully specified.

              mount -o remount,rw /dev/foo /dir

              After this call all old mount options are replaced and arbitrary
              stuff from fstab is ignored, except the loop=  option  which  is
              internally generated and maintained by the mount command.

              mount -o remount,rw  /dir

              After  this  call  mount  reads fstab (or mtab) and merges these
              options with options from command line ( -o ).

       ro     Mount the file system read-only.

       rw     Mount the file system read-write.

       sync   All I/O to the file system should be done synchronously. In case
              of  media  with  limited number of write cycles (e.g. some flash
              drives) "sync" may cause life-cycle shortening.

       user   Allow an ordinary user to mount the file system.   The  name  of
              the  mounting user is written to mtab so that he can unmount the
              file system again.  This  option  implies  the  options  noexec,
              nosuid,  and  nodev (unless overridden by subsequent options, as
              in the option line user,exec,dev,suid).

       nouser Forbid an ordinary (i.e., non-root) user to mount the file  sys‐
              tem.  This is the default.

       users  Allow  every  user  to  mount and unmount the file system.  This
              option implies the options noexec,  nosuid,  and  nodev  (unless
              overridden   by  subsequent  options,  as  in  the  option  line
              users,exec,dev,suid).

FILESYSTEM SPECIFIC MOUNT OPTIONS

       The following options apply only to certain file systems.  We sort them
       by file system. They all follow the -o flag.

       What  options  are supported depends a bit on the running kernel.  More
       info  may  be  found  in  the  kernel  source  subdirectory  Documenta‐
       tion/filesystems.

Mount options for adfs

       uid=value and gid=value
              Set  the  owner  and  group  of  the  files  in  the file system
              (default: uid=gid=0).

       ownmask=value and othmask=value
              Set the permission mask for ADFS 'owner' permissions and 'other'
              permissions,  respectively  (default:  0700  and  0077,  respec‐
              tively).    See    also    /usr/src/linux/Documentation/filesys‐
              tems/adfs.txt.

Mount options for affs

       uid=value and gid=value
              Set the owner and group of the root of the file system (default:
              uid=gid=0, but with option uid or gid without  specified  value,
              the uid and gid of the current process are taken).

       setuid=value and setgid=value
              Set the owner and group of all files.

       mode=value
              Set the mode of all files to value & 0777 disregarding the orig‐
              inal permissions.  Add search  permission  to  directories  that
              have read permission.  The value is given in octal.

       protect
              Do not allow any changes to the protection bits on the file sys‐
              tem.

       usemp  Set uid and gid of the root of the file system to  the  uid  and
              gid  of  the mount point upon the first sync or umount, and then
              clear this option. Strange...

       verbose
              Print an informational message for each successful mount.

       prefix=string
              Prefix used before volume name, when following a link.

       volume=string
              Prefix (of length at most 30) used before '/' when  following  a
              symbolic link.

       reserved=value
              (Default:  2.)  Number  of  unused  blocks  at  the start of the
              device.

       root=value
              Give explicitly the location of the root block.

       bs=value
              Give blocksize. Allowed values are 512, 1024, 2048, 4096.

       grpquota / noquota / quota / usrquota
              These options are accepted but ignored.  (However, quota  utili‐
              ties may react to such strings in /etc/fstab.)

Mount options for cifs

       See  the  options  section of the mount.cifs(8) man page (smbfs package
       must be installed).

Mount options for coherent

None.

Mount options for debugfs

       The debugfs file system is a pseudo file system, traditionally  mounted
       on /sys/kernel/debug.  There are no mount options.

Mount options for devpts

       The  devpts  file system is a pseudo file system, traditionally mounted
       on /dev/pts.  In order to acquire a pseudo terminal,  a  process  opens
       /dev/ptmx;  the number of the pseudo terminal is then made available to
       the  process  and  the  pseudo  terminal  slave  can  be  accessed   as
       /dev/pts/<number>.

       uid=value and gid=value
              This  sets  the  owner or the group of newly created PTYs to the
              specified values. When nothing is specified, they will be set to
              the  UID and GID of the creating process.  For example, if there
              is a tty group with GID 5, then gid=5 will cause  newly  created
              PTYs to belong to the tty group.

       mode=value
              Set  the mode of newly created PTYs to the specified value.  The
              default is 0600.  A value of mode=620 and gid=5 makes  "mesg  y"
              the default on newly created PTYs.

       newinstance
              Create  a  private  instance  of  devpts  filesystem,  such that
              indices of ptys allocated in this new instance  are  independent
              of indices created in other instances of devpts.

              All  mounts  of devpts without this newinstance option share the
              same set of pty indices (i.e legacy mode).  Each mount of devpts
              with the newinstance option has a private set of pty indices.

              This  option  is  mainly used to support containers in the linux
              kernel. It is implemented in linux kernel versions starting with
              2.6.29.   Further,  this  mount  option  is  valid  only if CON‐
              FIG_DEVPTS_MULTIPLE_INSTANCES is enabled in the kernel  configu‐
              ration.

              To  use  this  option  effectively, /dev/ptmx must be a symbolic
              link to pts/ptmx.  See  Documentation/filesystems/devpts.txt  in
              the linux kernel source tree for details.

       ptmxmode=value

              Set the mode for the new ptmx device node in the devpts filesys‐
              tem.

              With the support for multiple instances of  devpts  (see  newin�‐
              stance  option  above), each instance has a private ptmx node in
              the root of the devpts filesystem (typically /dev/pts/ptmx).

              For compatibility with older versions of the kernel, the default
              mode  of  the new ptmx node is 0000.  ptmxmode=value specifies a
              more useful mode for the ptmx node  and  is  highly  recommended
              when the newinstance option is specified.

              This  option is only implemented in linux kernel versions start‐
              ing with 2.6.29. Further this  option  is  valid  only  if  CON‐
              FIG_DEVPTS_MULTIPLE_INSTANCES  is enabled in the kernel configu‐
              ration.

Mount options for ext

       None.  Note that the `ext' file  system  is  obsolete.  Don't  use  it.
       Since  Linux  version  2.1.21  extfs  is  no  longer part of the kernel
       source.

Mount options for ext2

       The `ext2' file system is the standard Linux file system.  Since  Linux
       2.5.46,  for  most  mount  options  the  default  is  determined by the
       filesystem superblock. Set them with tune2fs(8).

       acl / noacl
              Support POSIX Access Control Lists (or not).

       bsddf / minixdf
              Set the behaviour for the statfs system call. The minixdf behav‐
              iour  is  to  return  in  the f_blocks field the total number of
              blocks of the file system, while the bsddf behaviour  (which  is
              the default) is to subtract the overhead blocks used by the ext2
              file system and not available for file storage. Thus

              % mount /k -o minixdf; df /k; umount /k
              Filesystem   1024-blocks  Used Available Capacity Mounted on
              /dev/sda6      2630655   86954  2412169      3%   /k
              % mount /k -o bsddf; df /k; umount /k
              Filesystem   1024-blocks  Used Available Capacity Mounted on
              /dev/sda6      2543714      13  2412169      0%   /k

              (Note that this example shows that  one  can  add  command  line
              options to the options given in /etc/fstab.)

       check=none / nocheck
              No  checking is done at mount time. This is the default. This is
              fast.  It is wise to invoke e2fsck(8) every now and  then,  e.g.
              at boot time.

       debug  Print debugging info upon each (re)mount.

       errors=continue / errors=remount-ro / errors=panic
              Define  the  behaviour  when  an  error is encountered.  (Either
              ignore errors and just mark the file system erroneous  and  con‐
              tinue,  or  remount the file system read-only, or panic and halt
              the system.)  The default is set in the  filesystem  superblock,
              and can be changed using tune2fs(8).

       grpid or bsdgroups / nogrpid or sysvgroups
              These  options  define  what group id a newly created file gets.
              When grpid is set, it takes the group id  of  the  directory  in
              which  it is created; otherwise (the default) it takes the fsgid
              of the current process, unless the directory has the setgid  bit
              set,  in  which case it takes the gid from the parent directory,
              and also gets the setgid bit set if it is a directory itself.

       grpquota / noquota / quota / usrquota
              These options are accepted but ignored.

       nobh   Do not attach buffer_heads to file pagecache. (Since 2.5.49.)

       nouid32
              Disables 32-bit UIDs and GIDs.   This  is  for  interoperability
              with older kernels which only store and expect 16-bit values.

       oldalloc or orlov
              Use  old  allocator  or Orlov allocator for new inodes. Orlov is
              default.

       resgid=n and resuid=n
              The ext2 file system reserves a certain percentage of the avail‐
              able space (by default 5%, see mke2fs(8) and tune2fs(8)).  These
              options determine who can use the  reserved  blocks.   (Roughly:
              whoever  has  the  specified  uid,  or  belongs to the specified
              group.)

       sb=n   Instead of block 1, use block n as  superblock.  This  could  be
              useful  when  the filesystem has been damaged.  (Earlier, copies
              of the superblock would be made every 8192 blocks: in  block  1,
              8193,  16385,  ...  (and  one  got  thousands of copies on a big
              filesystem).  Since  version  1.08,  mke2fs  has  a  -s  (sparse
              superblock)  option  to reduce the number of backup superblocks,
              and since version 1.15 this is the default. Note that  this  may
              mean  that ext2 filesystems created by a recent mke2fs cannot be
              mounted r/w under Linux 2.0.*.)  The block number here  uses  1k
              units.  Thus,  if  you  want  to  use  logical  block 32768 on a
              filesystem with 4k blocks, use "sb=131072".

       user_xattr / nouser_xattr
              Support "user." extended attributes (or not).

Mount options for ext3

       The `ext3' file system is a version of the ext2 file system  which  has
       been  enhanced  with journalling.  It supports the same options as ext2
       as well as the following additions:

       journal=update
              Update the ext3 file system's journal to the current format.

       journal=inum
              When a journal already exists, this option  is  ignored.  Other‐
              wise,  it specifies the number of the inode which will represent
              the ext3 file system's journal file;  ext3  will  create  a  new
              journal,  overwriting  the  old contents of the file whose inode
              number is inum.

       noload Do not load the ext3 file system's journal on mounting.

       data=journal / data=ordered / data=writeback
              Specifies the journalling  mode  for  file  data.   Metadata  is
              always  journaled.   To use modes other than ordered on the root
              file system, pass the mode to the kernel as boot parameter, e.g.
              rootflags=data=journal.

              journal
                     All  data  is  committed  into the journal prior to being
                     written into the main file system.

              ordered
                     This is the default mode.  All data  is  forced  directly
                     out  to  the main file system prior to its metadata being
                     committed to the journal.

              writeback
                     Data ordering is not preserved - data may be written into
                     the  main file system after its metadata has been commit‐
                     ted to the journal.  This is rumoured to be the  highest-
                     throughput  option.   It  guarantees internal file system
                     integrity, however it can allow old  data  to  appear  in
                     files after a crash and journal recovery.

       commit=nrsec
              Sync  all  data  and  metadata  every nrsec seconds. The default
              value is 5 seconds. Zero means default.

       user_xattr
              Enable Extended User Attributes. See the attr(5) manual page.

       acl    Enable POSIX Access Control Lists. See the acl(5) manual page.

Mount options for ext4

       The `ext4' is an an advanced level of the ext3 filesystem which  incor‐
       porates  scalability  and reliability enhancements for supporting large
       filesystem.

       The  options  journal_dev,  noload,  data,  commit,  orlov,   oldalloc,
       [no]user_xattr [no]acl, bsddf, minixdf, debug, errors, data_err, grpid,
       bsdgroups, nogrpid sysvgroups,  resgid,  resuid,  sb,  quota,  noquota,
       grpquota,  usrquota  and  [no]bh are backwardly compatible with ext3 or
       ext2.

       journal_checksum
              Enable checksumming of  the  journal  transactions.   This  will
              allow  the recovery code in e2fsck and the kernel to detect cor‐
              ruption in the kernel.  It is a compatible change  and  will  be
              ignored by older kernels.

       journal_async_commit
              Commit block can be written to disk without waiting for descrip‐
              tor blocks. If enabled older kernels cannot  mount  the  device.
              This will enable

       journal=update
              Update the ext4 file system's journal to the current format.

       barrier=0 / barrier=1 / barrier / nobarrier
              This enables/disables the use of write barriers in the jbd code.
              barrier=0 disables, barrier=1 enables.  This also requires an IO
              stack  which can support barriers, and if jbd gets an error on a
              barrier write, it will disable again with a warning.  Write bar‐
              riers enforce proper on-disk ordering of journal commits, making
              volatile disk write caches safe  to  use,  at  some  performance
              penalty.   If  your  disks  are  battery-backed  in  one  way or
              another, disabling barriers may safely improve performance.  The
              mount  options  "barrier"  and  "nobarrier"  can also be used to
              enable or disable barriers,  for  consistency  with  other  ext4
              mount options.

       inode_readahead=n
              This tuning parameter controls the maximum number of inode table
              blocks that ext4's inode table readahead algorithm will pre-read
              into the buffer cache.  The default value is 32 blocks.

       stripe=n
              Number  of  filesystem  blocks  that mballoc will try to use for
              allocation size and alignment. For RAID5/6 systems  this  should
              be  the  number  of  data disks * RAID chunk size in file system
              blocks.

       delalloc
              Deferring block allocation until write-out time.

       nodelalloc
              Disable delayed allocation. Blocks are allocation when  data  is
              copied from user to page cache.

       max_batch_time=usec
              Maximum  amount of time ext4 should wait for additional filesys‐
              tem operations to be batch together  with  a  synchronous  write
              operation. Since a synchronous write operation is going to force
              a commit and then a wait for the I/O complete, it  doesn't  cost
              much,  and  can  be  a  huge throughput win, we wait for a small
              amount of time to see if any other transactions can piggyback on
              the  synchronous  write. The algorithm used is designed to auto‐
              matically tune for the speed  of  the  disk,  by  measuring  the
              amount of time (on average) that it takes to finish committing a
              transaction. Call this time the "commit time".  If the time that
              the  transactoin  has been running is less than the commit time,
              ext4 will try sleeping for the commit time to see if other oper‐
              ations  will  join the transaction. The commit time is capped by
              the max_batch_time, which defaults to 15000us (15ms). This opti‐
              mization can be turned off entirely by setting max_batch_time to
              0.

       min_batch_time=usec
              This parameter sets the commit time (as described above)  to  be
              at  least  min_batch_time.  It  defaults  to  zero microseconds.
              Increasing this parameter may improve the throughput  of  multi-
              threaded,  synchronous workloads on very fast disks, at the cost
              of increasing latency.

       journal_ioprio=prio
              The I/O priority (from 0 to 7, where 0 is the  highest  priorty)
              which  should be used for I/O operations submitted by kjournald2
              during a commit operation.  This  defaults  to  3,  which  is  a
              slightly higher priority than the default I/O priority.

       auto_da_alloc / noauto_da_alloc
              Many  broken applications don't use fsync() when noauto_da_alloc
              replacing existing files via patterns such as

              fd =  open("foo.new")/write(fd,..)/close(fd)/  rename("foo.new",
              "foo")

              or worse yet

              fd = open("foo", O_TRUNC)/write(fd,..)/close(fd).

              If  auto_da_alloc  is enabled, ext4 will detect the replace-via-
              rename and replace-via-truncate  patterns  and  force  that  any
              delayed  allocation  blocks  are allocated such that at the next
              journal commit, in  the  default  data=ordered  mode,  the  data
              blocks  of  the  new file are forced to disk before the rename()
              operation is commited.  This provides roughly the same level  of
              guarantees  as  ext3,  and avoids the "zero-length" problem that
              can happen when a system crashes before the  delayed  allocation
              blocks are forced to disk.

Mount options for fat

       (Note:  fat  is  not  a  separate  filesystem, but a common part of the
       msdos, umsdos and vfat filesystems.)

       blocksize=512 / blocksize=1024 / blocksize=2048
              Set blocksize (default 512). This option is obsolete.

       uid=value and gid=value
              Set the owner and group of all files.  (Default: the uid and gid
              of the current process.)

       umask=value
              Set  the  umask  (the  bitmask  of  the permissions that are not
              present). The default is the umask of the current process.   The
              value is given in octal.

       dmask=value
              Set  the  umask applied to directories only.  The default is the
              umask of the current process.  The value is given in octal.

       fmask=value
              Set the umask applied to regular files only.  The default is the
              umask of the current process.  The value is given in octal.

       allow_utime=value
              This option controls the permission check of mtime/atime.

              20     If  current  process  is in group of file's group ID, you
                     can change timestamp.

              2      Other users can change timestamp.

              The default is set from `dmask' option.  (If  the  directory  is
              writable, utime(2) is also allowed. I.e. ~dmask & 022)

              Normally  utime(2)  checks current process is owner of the file,
              or it has CAP_FOWNER capability.   But  FAT  filesystem  doesn't
              have  uid/gid  on  disk, so normal check is too unflexible. With
              this option you can relax it.

       check=value
              Three different levels of pickyness can be chosen:

              r[elaxed]
                     Upper and lower case are accepted  and  equivalent,  long
                     name   parts  are  truncated  (e.g.   verylongname.foobar
                     becomes verylong.foo), leading and  embedded  spaces  are
                     accepted in each name part (name and extension).

              n[ormal]
                     Like  "relaxed",  but  many  special characters (*, ?, <,
                     spaces, etc.) are rejected.  This is the default.

              s[trict]
                     Like "normal", but names may not contain long  parts  and
                     special  characters that are sometimes used on Linux, but
                     are not accepted by MS-DOS are rejected. (+,  =,  spaces,
                     etc.)

       codepage=value
              Sets  the codepage for converting to shortname characters on FAT
              and VFAT filesystems. By default, codepage 437 is used.

       conv=b[inary] / conv=t[ext] / conv=a[uto]
              The fat file system can perform CRLF<-->NL (MS-DOS  text  format
              to  UNIX  text  format)  conversion in the kernel. The following
              conversion modes are available:

              binary no translation is performed.  This is the default.

              text   CRLF<-->NL translation is performed on all files.

              auto   CRLF<-->NL translation is performed  on  all  files  that
                     don't  have  a "well-known binary" extension. The list of
                     known  extensions  can  be  found  at  the  beginning  of
                     fs/fat/misc.c  (as  of  2.0,  the list is: exe, com, bin,
                     app, sys, drv, ovl, ovr, obj, lib, dll,  pif,  arc,  zip,
                     lha,  lzh,  zoo, tar, z, arj, tz, taz, tzp, tpz, gz, tgz,
                     deb, gif, bmp, tif, gl, jpg, pcx, tfm, vf, gf,  pk,  pxl,
                     dvi).

              Programs  that do computed lseeks won't like in-kernel text con‐
              version.  Several people have had  their  data  ruined  by  this
              translation. Beware!

              For  file  systems  mounted  in  binary  mode, a conversion tool
              (fromdos/todos) is available. This option is obsolete.

       cvf_format=module
              Forces the driver to use the CVF (Compressed Volume File) module
              cvf_module  instead  of  auto-detection.  If the kernel supports
              kmod, the cvf_format=xxx option also controls on-demand CVF mod‐
              ule loading.  This option is obsolete.

       cvf_option=option
              Option passed to the CVF module. This option is obsolete.

       debug  Turn  on  the  debug  flag.  A version string and a list of file
              system parameters will be printed (these data are  also  printed
              if the parameters appear to be inconsistent).

       fat=12 / fat=16 / fat=32
              Specify  a  12,  16 or 32 bit fat.  This overrides the automatic
              FAT type detection routine.  Use with caution!

       iocharset=value
              Character set to use for converting between 8 bit characters and
              16 bit Unicode characters. The default is iso8859-1.  Long file‐
              names are stored on disk in Unicode format.

       tz=UTC This option disables the conversion of timestamps between  local
              time  (as  used  by  Windows  on  FAT) and UTC (which Linux uses
              internally).  This is particuluarly useful when mounting devices
              (like digital cameras) that are set to UTC in order to avoid the
              pitfalls of local time.

       quiet  Turn on the quiet flag.  Attempts to chown or chmod files do not
              return errors, although they fail. Use with caution!

       showexec
              If  set, the execute permission bits of the file will be allowed
              only if the extension part of the name is .EXE, .COM,  or  .BAT.
              Not set by default.

       sys_immutable
              If  set,  ATTR_SYS attribute on FAT is handled as IMMUTABLE flag
              on Linux.  Not set by default.

       flush  If set, the filesystem will try to flush to disk more early than
              normal.  Not set by default.

       usefree
              Use the "free clusters" value stored on FSINFO. It'll be used to
              determine number of free clusters  without  scanning  disk.  But
              it's not used by default, because recent Windows don't update it
              correctly in some case. If you are sure the "free  clusters"  on
              FSINFO is correct, by this option you can avoid scanning disk.

       dots, nodots, dotsOK=[yes|no]
              Various misguided attempts to force Unix or DOS conventions onto
              a FAT file system.

Mount options for hfs

       creator=cccc, type=cccc
              Set the creator/type values as shown by the  MacOS  finder  used
              for creating new files.  Default values: '????'.

       uid=n, gid=n
              Set the owner and group of all files.  (Default: the uid and gid
              of the current process.)

       dir_umask=n, file_umask=n, umask=n
              Set the umask used for all directories, all  regular  files,  or
              all files and directories.  Defaults to the umask of the current
              process.

       session=n
              Select the CDROM session to mount.   Defaults  to  leaving  that
              decision  to  the CDROM driver.  This option will fail with any‐
              thing but a CDROM as underlying device.

       part=n Select partition number n from the device.  Only makes sense for
              CDROMS.  Defaults to not parsing the partition table at all.

       quiet  Don't complain about invalid mount options.

Mount options for hpfs

       uid=value and gid=value
              Set  the owner and group of all files. (Default: the uid and gid
              of the current process.)

       umask=value
              Set the umask (the bitmask  of  the  permissions  that  are  not
              present).  The default is the umask of the current process.  The
              value is given in octal.

       case=lower / case=asis
              Convert all files names to lower case, or leave them.  (Default:
              case=lower.)

       conv=binary / conv=text / conv=auto
              For  conv=text,  delete some random CRs (in particular, all fol‐
              lowed by NL) when reading a file.  For conv=auto, choose more or
              less   at   random   between  conv=binary  and  conv=text.   For
              conv=binary, just read what is in the file. This is the default.

       nocheck
              Do not abort mounting when certain consistency checks fail.

Mount options for iso9660

       ISO 9660 is a standard describing a filesystem structure to be used  on
       CD-ROMs.  (This filesystem type is also seen on some DVDs. See also the
       udf filesystem.)

       Normal iso9660  filenames  appear  in  a  8.3  format  (i.e.,  DOS-like
       restrictions on filename length), and in addition all characters are in
       upper case.  Also there is no field  for  file  ownership,  protection,
       number of links, provision for block/character devices, etc.

       Rock  Ridge  is an extension to iso9660 that provides all of these unix
       like features.  Basically there are extensions to each directory record
       that  supply  all of the additional information, and when Rock Ridge is
       in use, the filesystem is indistinguishable from  a  normal  UNIX  file
       system (except that it is read-only, of course).

       norock Disable the use of Rock Ridge extensions, even if available. Cf.
              map.

       nojoliet
              Disable the use of Microsoft Joliet extensions, even  if  avail‐
              able. Cf. map.

       check=r[elaxed] / check=s[trict]
              With  check=relaxed, a filename is first converted to lower case
              before doing the  lookup.   This  is  probably  only  meaningful
              together with norock and map=normal.  (Default: check=strict.)

       uid=value and gid=value
              Give  all  files  in the file system the indicated user or group
              id, possibly overriding the information found in the Rock  Ridge
              extensions.  (Default: uid=0,gid=0.)

       map=n[ormal] / map=o[ff] / map=a[corn]
              For  non-Rock  Ridge volumes, normal name translation maps upper
              to lower case ASCII, drops a trailing `;1', and converts `;'  to
              `.'.   With  map=off  no  name  translation is done. See norock.
              (Default: map=normal.)  map=acorn is like  map=normal  but  also
              apply Acorn extensions if present.

       mode=value
              For  non-Rock  Ridge volumes, give all files the indicated mode.
              (Default: read permission for everybody.)   Since  Linux  2.1.37
              one  no  longer  needs to specify the mode in decimal. (Octal is
              indicated by a leading 0.)

       unhide Also show hidden and associated files.  (If the  ordinary  files
              and the associated or hidden files have the same filenames, this
              may make the ordinary files inaccessible.)

       block=[512|1024|2048]
              Set  the  block  size  to  the   indicated   value.    (Default:
              block=1024.)

       conv=a[uto] / conv=b[inary] / conv=m[text] / conv=t[ext]
              (Default:  conv=binary.)   Since Linux 1.3.54 this option has no
              effect anymore.  (And non-binary settings used to be  very  dan‐
              gerous, possibly leading to silent data corruption.)

       cruft  If  the high byte of the file length contains other garbage, set
              this mount option to ignore the high  order  bits  of  the  file
              length.  This implies that a file cannot be larger than 16MB.

       session=x
              Select number of session on multisession CD. (Since 2.3.4.)

       sbsector=xxx
              Session begins from sector xxx. (Since 2.3.4.)

       The following options are the same as for vfat and specifying them only
       makes sense when using discs encoded using  Microsoft's  Joliet  exten‐
       sions.

       iocharset=value
              Character set to use for converting 16 bit Unicode characters on
              CD to 8 bit characters. The default is iso8859-1.

       utf8   Convert 16 bit Unicode characters on CD to UTF-8.

Mount options for jfs

       iocharset=name
              Character set to use for converting from Unicode to ASCII.   The
              default  is  to  do  no conversion.  Use iocharset=utf8 for UTF8
              translations.  This requires CONFIG_NLS_UTF8 to be  set  in  the
              kernel .config file.

       resize=value
              Resize  the  volume to value blocks. JFS only supports growing a
              volume, not shrinking it. This option is  only  valid  during  a
              remount,  when the volume is mounted read-write. The resize key‐
              word with no value will grow the volume to the full size of  the
              partition.

       nointegrity
              Do  not write to the journal.  The primary use of this option is
              to allow for higher performance when  restoring  a  volume  from
              backup  media.  The integrity of the volume is not guaranteed if
              the system abnormally abends.

       integrity
              Default.  Commit metadata changes  to  the  journal.   Use  this
              option to remount a volume where the nointegrity option was pre‐
              viously specified in order to restore normal behavior.

       errors=continue / errors=remount-ro / errors=panic
              Define the behaviour when  an  error  is  encountered.   (Either
              ignore  errors  and just mark the file system erroneous and con‐
              tinue, or remount the file system read-only, or panic  and  halt
              the system.)

       noquota / quota / usrquota / grpquota
              These options are accepted but ignored.

Mount options for minix

None.

Mount options for msdos

       See  mount options for fat.  If the msdos file system detects an incon‐
       sistency, it reports an error and sets the file system  read-only.  The
       file system can be made writeable again by remounting it.

Mount options for ncpfs

       Just  like  nfs,  the ncpfs implementation expects a binary argument (a
       struct ncp_mount_data) to the mount system call. This argument is  con‐
       structed  by  ncpmount(8)  and the current version of mount (2.12) does
       not know anything about ncpfs.

Mount options for nfs and nfs4

       See the options section of the nfs(5) man page (nfs-common package must
       be installed).

       The  nfs  and  nfs4  implementation expects a binary argument (a struct
       nfs_mount_data) to the mount system call. This argument is  constructed
       by  mount.nfs(8)  and the current version of mount (2.13) does not know
       anything about nfs and nfs4.

Mount options for ntfs

       iocharset=name
              Character set to use when returning file  names.   Unlike  VFAT,
              NTFS  suppresses  names  that  contain unconvertible characters.
              Deprecated.

       nls=name
              New name for the option earlier called iocharset.

       utf8   Use UTF-8 for converting file names.

       uni_xlate=[0|1|2]
              For 0 (or `no' or `false'), do  not  use  escape  sequences  for
              unknown  Unicode  characters.   For 1 (or `yes' or `true') or 2,
              use vfat-style 4-byte escape sequences starting with ":". Here 2
              give  a  little-endian  encoding  and  1 a byteswapped bigendian
              encoding.

       posix=[0|1]
              If enabled (posix=1),  the  file  system  distinguishes  between
              upper  and lower case. The 8.3 alias names are presented as hard
              links instead of being suppressed. This option is obsolete.

       uid=value, gid=value and umask=value
              Set the file permission on the filesystem.  The umask  value  is
              given in octal.  By default, the files are owned by root and not
              readable by somebody else.

Mount options for proc

       uid=value and gid=value
              These options are recognized, but have no effect as far as I can
              see.

Mount options for ramfs

       Ramfs  is  a memory based filesystem. Mount it and you have it. Unmount
       it and it is gone. Present since Linux 2.3.99pre4.  There are no  mount
       options.

Mount options for reiserfs

Reiserfs is a journaling filesystem.

       conv   Instructs  version  3.6 reiserfs software to mount a version 3.5
              file system, using the 3.6 format  for  newly  created  objects.
              This  file system will no longer be compatible with reiserfs 3.5
              tools.

       hash=rupasov / hash=tea / hash=r5 / hash=detect
              Choose which hash function  reiserfs  will  use  to  find  files
              within directories.

              rupasov
                     A hash invented by Yury Yu. Rupasov.  It is fast and pre‐
                     serves locality,  mapping  lexicographically  close  file
                     names  to  close  hash values.  This option should not be
                     used, as it causes a high probability of hash collisions.

              tea    A   Davis-Meyer   function    implemented    by    Jeremy
                     Fitzhardinge.   It  uses hash permuting bits in the name.
                     It gets high randomness and, therefore,  low  probability
                     of hash collisions at some CPU cost.  This may be used if
                     EHASHCOLLISION errors are experienced with the r5 hash.

              r5     A modified version of the rupasov hash.  It  is  used  by
                     default and is the best choice unless the file system has
                     huge directories and unusual file-name patterns.

              detect Instructs mount to detect which hash function is  in  use
                     by examining the file system being mounted,  and to write
                     this information into the reiserfs  superblock.  This  is
                     only useful on the first mount of an old format file sys‐
                     tem.

       hashed_relocation
              Tunes the block allocator. This may provide performance improve‐
              ments in some situations.

       no_unhashed_relocation
              Tunes the block allocator. This may provide performance improve‐
              ments in some situations.

       noborder
              Disable the border allocator  algorithm  invented  by  Yury  Yu.
              Rupasov.  This may provide performance improvements in some sit‐
              uations.

       nolog  Disable  journalling.  This  will  provide  slight   performance
              improvements in some situations at the cost of losing reiserfs's
              fast recovery from crashes.  Even with this  option  turned  on,
              reiserfs  still  performs  all  journalling operations, save for
              actual writes into  its  journalling  area.   Implementation  of
              nolog is a work in progress.

       notail By  default,  reiserfs  stores  small  files  and  `file  tails'
              directly into its tree. This confuses  some  utilities  such  as
              LILO(8).   This  option is used to disable packing of files into
              the tree.

       replayonly
              Replay the transactions which are in the  journal,  but  do  not
              actually mount the file system. Mainly used by reiserfsck.

       resize=number
              A remount option which permits online expansion of reiserfs par‐
              titions.  Instructs reiserfs to assume that the device has  num‐
              ber  blocks.  This option is designed for use with devices which
              are under logical volume management (LVM).  There is  a  special
              resizer     utility     which     can     be    obtained    from
              ftp://ftp.namesys.com/pub/reiserfsprogs.

       user_xattr
              Enable Extended User Attributes. See the attr(5) manual page.

       acl    Enable POSIX Access Control Lists. See the acl(5) manual page.

Mount options for romfs

None.

Mount options for smbfs

       Just like nfs, the smbfs implementation expects a  binary  argument  (a
       struct  smb_mount_data) to the mount system call. This argument is con‐
       structed by smbmount(8) and the current version of  mount  (2.12)  does
       not know anything about smbfs.

Mount options for sysv

None.

Mount options for tmpfs

       size=nbytes
              Override  default  maximum  size of the filesystem.  The size is
              given in bytes, and rounded down to entire pages.   The  default
              is  half of the memory. The size parameter also accepts a suffix
              % to limit this tmpfs instance to that percentage of your physi‐
              cal  RAM: the default, when neither size nor nr_blocks is speci‐
              fied, is size=50%

       nr_blocks=
              The same as size, but in blocks of PAGE_CACHE_SIZE

       nr_inodes=
              The maximum number of inodes for this instance. The  default  is
              half  of the number of your physical RAM pages, or (on a machine
              with highmem) the number of lowmem RAM pages, whichever  is  the
              lower.

       The  tmpfs  mount  options for sizing ( size, nr_blocks, and nr_inodes)
       accept a suffix k, m or g for Ki, Mi, Gi (binary kilo, mega  and  giga)
       and can be changed on remount.

       mode=  Set initial permissions of the root directory.

       uid=   The user id.

       gid=   The group id.

       mpol=[default|prefer:Node|bind:NodeList|interleave|interleave:NodeList]
              Set  the  NUMA  memory  allocation  policy for all files in that
              instance (if the kernel CONFIG_NUMA is enabled) - which  can  be
              adjusted on the fly via 'mount -o remount ...'

              default
                     prefers to allocate memory from the local node

              prefer:Node
                     prefers to allocate memory from the given Node

              bind:NodeList
                     allocates memory only from nodes in NodeList

              interleave
                     prefers to allocate from each node in turn

              interleave:NodeList
                     allocates from each node of NodeList in turn.

              The NodeList format is a comma-separated list of decimal numbers
              and ranges, a range being two hyphen-separated decimal  numbers,
              the  smallest  and largest node numbers in the range.  For exam‐
              ple, mpol=bind:0-3,5,7,9-15

              Note that trying to mount a tmpfs with an mpol option will  fail
              if  the  running  kernel does not support NUMA; and will fail if
              its nodelist specifies a node which is not online.  If your sys‐
              tem  relies  on  that tmpfs being mounted, but from time to time
              runs a kernel built without  NUMA  capability  (perhaps  a  safe
              recovery  kernel), or with fewer nodes online, then it is advis‐
              able to omit the mpol option from automatic mount  options.   It
              can  be added later, when the tmpfs is already mounted on Mount‐
              Point, by 'mount -o remount,mpol=Policy:NodeList MountPoint'.

Mount options for udf

       udf is the "Universal Disk Format" filesystem defined  by  the  Optical
       Storage  Technology  Association,  and  is often used for DVD-ROM.  See
       also iso9660.

       gid=   Set the default group.

       umask= Set the default umask.  The value is given in octal.

       uid=   Set the default user.

       unhide Show otherwise hidden files.

       undelete
              Show deleted files in lists.

       nostrict
              Unset strict conformance.

       iocharset
              Set the NLS character set.

       bs=    Set the block size. (May not work unless 2048.)

       novrs  Skip volume sequence recognition.

       session=
              Set the CDROM session counting from 0. Default: last session.

       anchor=
              Override standard anchor location. Default: 256.

       volume=
              Override the VolumeDesc location. (unused)

       partition=
              Override the PartitionDesc location. (unused)

       lastblock=
              Set the last block of the filesystem.

       fileset=
              Override the fileset block location. (unused)

       rootdir=
              Override the root directory location. (unused)

Mount options for ufs

       ufstype=value
              UFS is a file system widely used in different operating systems.
              The  problem  are differences among implementations. Features of
              some implementations are undocumented, so its hard to  recognize
              the type of ufs automatically.  That's why the user must specify
              the type of ufs by mount option.  Possible values are:

              old    Old format of  ufs,  this  is  the  default,  read  only.
                     (Don't forget to give the -r option.)

              44bsd  For    filesystems   created   by   a   BSD-like   system
                     (NetBSD,FreeBSD,OpenBSD).

              sun    For filesystems created by SunOS or Solaris on Sparc.

              sunx86 For filesystems created by Solaris on x86.

              hp     For filesystems created by HP-UX, read-only.

              nextstep
                     For filesystems created by  NeXTStep  (on  NeXT  station)
                     (currently read only).

              nextstep-cd
                     For NextStep CDROMs (block_size == 2048), read-only.

              openstep
                     For  filesystems  created  by  OpenStep  (currently  read
                     only).  The same filesystem type is also used by  Mac  OS
                     X.

       onerror=value
              Set behaviour on error:

              panic  If an error is encountered, cause a kernel panic.

              [lock|umount|repair]
                     These mount options don't do anything at present; when an
                     error is encountered only a console message is printed.

Mount options for umsdos

       See mount options for msdos.  The dotsOK option is explicitly killed by
       umsdos.

Mount options for vfat

       First  of  all,  the  mount options for fat are recognized.  The dotsOK
       option is explicitly killed by vfat.  Furthermore, there are

       uni_xlate
              Translate  unhandled  Unicode  characters  to  special   escaped
              sequences.   This lets you backup and restore filenames that are
              created with any Unicode characters. Without this option, a  '?'
              is used when no translation is possible. The escape character is
              ':' because it is otherwise illegal on the vfat filesystem.  The
              escape  sequence  that gets used, where u is the unicode charac‐
              ter, is: ':', (u & 0x3f), ((u>>6) & 0x3f), (u>>12).

       posix  Allow two files with names that only differ in case.

       nonumtail
              First try to make a short name without sequence  number,  before
              trying name~num.ext.

       utf8   UTF8  is  the  filesystem safe 8-bit encoding of Unicode that is
              used by the console. It can be be  enabled  for  the  filesystem
              with this option or disabled with utf8=0, utf8=no or utf8=false.
              If `uni_xlate' gets set, UTF8 gets disabled.

       shortname=[lower|win95|winnt|mixed]

              Defines the behaviour for  creation  and  display  of  filenames
              which fit into 8.3 characters. If a long name for a file exists,
              it will always be preferred display. There are four modes: :

              lower  Force the short name to lower case upon display; store  a
                     long name when the short name is not all upper case. This
                     mode is the default.

              win95  Force the short name to upper case upon display; store  a
                     long name when the short name is not all upper case.

              winnt  Display  the  shortname as is; store a long name when the
                     short name is not all lower case or all upper case.

              mixed  Display the short name as is; store a long name when  the
                     short name is not all upper case.

       Mount options for usbfs

       devuid=uid and devgid=gid and devmode=mode
              Set  the  owner  and  group  and mode of the device files in the
              usbfs file system (default: uid=gid=0, mode=0644). The  mode  is
              given in octal.

       busuid=uid and busgid=gid and busmode=mode
              Set  the  owner and group and mode of the bus directories in the
              usbfs file system (default: uid=gid=0, mode=0555). The  mode  is
              given in octal.

       listuid=uid and listgid=gid and listmode=mode
              Set  the  owner and group and mode of the file devices (default:
              uid=gid=0, mode=0444). The mode is given in octal.

Mount options for xenix

None.

Mount options for xfs

       allocsize=size
              Sets the buffered I/O end-of-file preallocation size when  doing
              delayed allocation writeout (default size is 64KiB).  Valid val‐
              ues for this option are page size (typically  4KiB)  through  to
              1GiB, inclusive, in power-of-2 increments.

       attr2 / noattr2
              The  options  enable/disable  (default  is disabled for backward
              compatibility on-disk) an "opportunistic" improvement to be made
              in  the way inline extended attributes are stored on-disk.  When
              the new form is used for the first time (by setting or  removing
              extended  attributes)  the  on-disk superblock feature bit field
              will be updated to reflect this format being in use.

       barrier
              Enables the use of block layer write barriers  for  writes  into
              the  journal  and  unwritten extent conversion.  This allows for
              drive level write caching to be enabled, for devices  that  sup‐
              port write barriers.

       dmapi  Enable the DMAPI (Data Management API) event callouts.  Use with
              the mtpt option.

       grpid / bsdgroups and nogrpid / sysvgroups
              These options define what group ID a newly  created  file  gets.
              When  grpid  is  set,  it takes the group ID of the directory in
              which it is created; otherwise (the default) it takes the  fsgid
              of  the current process, unless the directory has the setgid bit
              set, in which case it takes the gid from the  parent  directory,
              and also gets the setgid bit set if it is a directory itself.

       ihashsize=value
              Sets  the  number  of hash buckets available for hashing the in-
              memory inodes of the specified mount point.  If a value of  zero
              is  used,  the  value  selected by the default algorithm will be
              displayed in /proc/mounts.

       ikeep / noikeep
              When inode clusters are emptied of inodes, keep them  around  on
              the  disk (ikeep) - this is the traditional XFS behaviour and is
              still the default for now.   Using  the  noikeep  option,  inode
              clusters are returned to the free space pool.

       inode64
              Indicates  that  XFS is allowed to create inodes at any location
              in the filesystem, including those which will  result  in  inode
              numbers  occupying  more  than 32 bits of significance.  This is
              provided for backwards compatibility, but  causes  problems  for
              backup applications that cannot handle large inode numbers.

       largeio / nolargeio
              If  nolargeio  is specified, the optimal I/O reported in st_blk‐
              size by stat(2) will be as  small  as  possible  to  allow  user
              applications  to  avoid  inefficient  read/modify/write I/O.  If
              largeio is specified, a filesystem that has a  swidth  specified
              will  return  the  swidth value (in bytes) in st_blksize. If the
              filesystem does not have a swidth specified but does specify  an
              allocsize  then  allocsize  (in bytes) will be returned instead.
              If neither of these two options are specified,  then  filesystem
              will behave as if nolargeio was specified.

       logbufs=value
              Set  the  number  of in-memory log buffers.  Valid numbers range
              from 2-8 inclusive.  The default value is 8 buffers for filesys‐
              tems with a blocksize of 64KiB, 4 buffers for filesystems with a
              blocksize of 32KiB, 3 buffers for filesystems with  a  blocksize
              of 16KiB and 2 buffers for all other configurations.  Increasing
              the number of buffers may increase performance on some workloads
              at  the  cost  of the memory used for the additional log buffers
              and their associated control structures.

       logbsize=value
              Set the size of each in-memory log buffer.  Size may  be  speci‐
              fied  in  bytes, or in kilobytes with a "k" suffix.  Valid sizes
              for version 1 and version 2  logs  are  16384  (16k)  and  32768
              (32k).  Valid sizes for version 2 logs also include 65536 (64k),
              131072 (128k) and 262144 (256k).  The default value for machines
              with more than 32MiB of memory is 32768, machines with less mem‐
              ory use 16384 by default.

       logdev=device and rtdev=device
              Use an external log (metadata journal) and/or real-time  device.
              An  XFS  filesystem has up to three parts: a data section, a log
              section, and a real-time  section.   The  real-time  section  is
              optional, and the log section can be separate from the data sec‐
              tion or contained within it.  Refer to xfs(5).

       mtpt=mountpoint
              Use with the dmapi option. The  value  specified  here  will  be
              included in the DMAPI mount event, and should be the path of the
              actual mountpoint that is used.

       noalign
              Data allocations will not be aligned at stripe unit boundaries.

       noatime
              Access timestamps are not updated when a file is read.

       norecovery
              The filesystem will be mounted without running log recovery.  If
              the  filesystem  was  not  cleanly unmounted, it is likely to be
              inconsistent when mounted in norecovery  mode.   Some  files  or
              directories  may not be accessible because of this.  Filesystems
              mounted norecovery must be mounted read-only or the  mount  will
              fail.

       nouuid Don't  check for double mounted file systems using the file sys‐
              tem uuid.  This is useful to mount LVM snapshot volumes.

       osyncisosync
              Make O_SYNC writes implement true O_SYNC.  WITHOUT this  option,
              Linux  XFS  behaves  as if an osyncisdsync option is used, which
              will make writes to files opened with the O_SYNC flag set behave
              as  if  the O_DSYNC flag had been used instead.  This can result
              in better performance without compromising data safety.  However
              if  this  option is not in effect, timestamp updates from O_SYNC
              writes can be lost if the system crashes.  If timestamp  updates
              are critical, use the osyncisosync option.

       uquota / usrquota / uqnoenforce / quota
              User  disk  quota  accounting  enabled,  and limits (optionally)
              enforced.  Refer to xfs_quota(8) for further details.

       gquota / grpquota / gqnoenforce
              Group disk quota  accounting  enabled  and  limits  (optionally)
              enforced. Refer to xfs_quota(8) for further details.

       pquota / prjquota / pqnoenforce
              Project  disk  quota  accounting enabled and limits (optionally)
              enforced. Refer to xfs_quota(8) for further details.

       sunit=value and swidth=value
              Used to specify the stripe unit and width for a RAID device or a
              stripe volume.  value must be specified in 512-byte block units.
              If this option is not specified and the filesystem was made on a
              stripe volume or the stripe width or unit were specified for the
              RAID device at mkfs  time,  then  the  mount  system  call  will
              restore the value from the superblock.  For filesystems that are
              made directly on RAID devices, these  options  can  be  used  to
              override  the  information  in  the superblock if the underlying
              disk layout changes after the filesystem has been created.   The
              swidth  option  is  required if the sunit option has been speci‐
              fied, and must be a multiple of the sunit value.

       swalloc
              Data allocations will be rounded up to stripe  width  boundaries
              when the current end of file is being extended and the file size
              is larger than the stripe width size.

Mount options for xiafs

       None. Although nothing is wrong with xiafs, it is not used much, and is
       not  maintained.  Probably  one  shouldn't use it.  Since Linux version
       2.1.21 xiafs is no longer part of the kernel source.

THE LOOP DEVICE

       One further possible type is a mount via the loop device. For  example,
       the command

         mount /tmp/fdimage /mnt -t vfat -o loop=/dev/loop3

       will  set  up  the  loop  device  /dev/loop3  to correspond to the file
       /tmp/fdimage, and then mount this device on /mnt.

       This type of mount knows about four options, namely loop, offset, size�‐
       limit  and  encryption,  that are really options to losetup(8).  If the
       mount requires a passphrase, you will be prompted for  one  unless  you
       specify  a  file  descriptor  to  read  from instead with the --pass-fd
       option.  (These options can be used in addition to  those  specific  to
       the filesystem type.)

       If  no  explicit loop device is mentioned (but just an option `-o loop'
       is given), then mount will try to find some unused loop device and  use
       that.

       Since  Linux  2.6.25  is supported auto-destruction of loop devices and
       then any loop device allocated by mount will be freed by  umount  inde‐
       pendently on /etc/mtab .

       You  can also free a loop device by hand, using `losetup -d' or `umount
       -d`.

RETURN CODES

mount has the following return codes (the bits can be ORed):

0 success

1 incorrect invocation or permissions

2 system error (out of memory, cannot fork, no more loop devices)

4 internal mount bug

8 user interrupt

16 problems writing or locking /etc/mtab

32 mount failure

64 some mount succeeded

NOTES

The syntax of external mount helpers is:

/sbin/mount.<suffix> spec dir [-sfnv] [-o options]

       where the <suffix> is filesystem type  and  -sfnvo  options  have  same
       meaning like standard mount options.

FILES

/etc/fstab file system table

/etc/mtab table of mounted file systems

/etc/mtab~ lock file

/etc/mtab.tmp temporary file

/etc/filesystems a list of filesystem types to try

SEE ALSO

       mount(2),  umount(2),  fstab(5),  umount(8), swapon(8), nfs(5), xfs(5),
       e2label(8), xfs_admin(8), mountd(8),  nfsd(8),  mke2fs(8),  tune2fs(8),
       losetup(8)

BUGS

It is possible for a corrupted file system to cause a crash.

       Some Linux file systems don't support -o sync and -o dirsync (the ext2,
       ext3, fat and vfat file systems do support synchronous  updates  (a  la
       BSD) when mounted with the sync option).

       The  -o remount may not be able to change mount parameters (all ext2fs-
       specific parameters, except sb, are  changeable  with  a  remount,  for
       example, but you can't change gid or umask for the fatfs).

       Mount  by  label  or uuid will work only if your devices have the names
       listed in /proc/partitions.  In particular, it may  well  fail  if  the
       kernel was compiled with devfs but devfs is not mounted.

       It  is  possible that files /etc/mtab and /proc/mounts don't match. The
       first file is based only on the mount command options, but the  content
       of the second file also depends on the kernel and others settings (e.g.
       remote NFS server. In particular case the  mount  command  may  reports
       unreliable  information  about  a  NFS mount point and the /proc/mounts
       file usually contains more reliable information.)

       Checking files on NFS filesystem referenced by file  descriptors  (i.e.
       the  fcntl  and  ioctl  families of functions) may lead to inconsistent
       result due to the lack of consistency check in kernel even if  noac  is
       used.

HISTORY

A mount command existed in Version 5 AT&T UNIX.

AVAILABILITY

       The mount command is part of the util-linux-ng package and is available
       from ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/.

Linux 2.6                         2004-12-16                          MOUNT(8)