2004-11-03 13:51:07 +00:00
|
|
|
.\" Hey Emacs! This file is -*- nroff -*- source.
|
|
|
|
.\"
|
|
|
|
.\" Copyright (C) 1993 Rickard E. Faith <faith@cs.unc.edu>
|
2006-05-22 23:52:24 +00:00
|
|
|
.\" and Copyright (C) 1994 Andries E. Brouwer <aeb@cwi.nl>
|
2007-09-20 06:52:22 +00:00
|
|
|
.\" and Copyright (C) 2002, 2005 Michael Kerrisk <mtk.manpages@gmail.com>
|
2004-11-03 13:51:07 +00:00
|
|
|
.\"
|
|
|
|
.\" Permission is granted to make and distribute verbatim copies of this
|
|
|
|
.\" manual provided the copyright notice and this permission notice are
|
|
|
|
.\" preserved on all copies.
|
|
|
|
.\"
|
|
|
|
.\" Permission is granted to copy and distribute modified versions of this
|
|
|
|
.\" manual under the conditions for verbatim copying, provided that the
|
|
|
|
.\" entire resulting derived work is distributed under the terms of a
|
|
|
|
.\" permission notice identical to this one.
|
2007-04-12 22:42:49 +00:00
|
|
|
.\"
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" Since the Linux kernel and libraries are constantly changing, this
|
|
|
|
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
|
|
|
.\" responsibility for errors or omissions, or for damages resulting from
|
|
|
|
.\" the use of the information contained herein. The author(s) may not
|
|
|
|
.\" have taken the same level of care in the production of this manual,
|
|
|
|
.\" which is licensed free of charge, as they might when working
|
|
|
|
.\" professionally.
|
2007-04-12 22:42:49 +00:00
|
|
|
.\"
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" Formatted or processed versions of this manual, if unaccompanied by
|
|
|
|
.\" the source, must acknowledge the copyright and authors of this work.
|
|
|
|
.\"
|
|
|
|
.\" Modified 1996-11-04 by Eric S. Raymond <esr@thyrsus.com>
|
2007-09-20 06:52:22 +00:00
|
|
|
.\" Modified 2001-10-13 by Michael Kerrisk <mtk.manpages@gmail.com>
|
2007-06-08 09:56:56 +00:00
|
|
|
.\" Added note on historical behavior of MS_NOSUID
|
2007-09-20 06:52:22 +00:00
|
|
|
.\" Modified 2002-05-16 by Michael Kerrisk <mtk.manpages@gmail.com>
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" Extensive changes and additions
|
|
|
|
.\" Modified 2002-05-27 by aeb
|
2007-09-20 06:52:22 +00:00
|
|
|
.\" Modified 2002-06-11 by Michael Kerrisk <mtk.manpages@gmail.com>
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" Enhanced descriptions of MS_MOVE, MS_BIND, and MS_REMOUNT
|
2007-09-20 06:52:22 +00:00
|
|
|
.\" Modified 2004-06-17 by Michael Kerrisk <mtk.manpages@gmail.com>
|
2005-05-18 14:34:43 +00:00
|
|
|
.\" 2005-05-18, mtk, Added MNT_EXPIRE, plus a few other tidy-ups.
|
2004-11-03 13:51:07 +00:00
|
|
|
.\"
|
2007-12-17 14:28:25 +00:00
|
|
|
.TH MOUNT 2 2007-12-17 "Linux" "Linux Programmer's Manual"
|
2004-11-03 13:51:07 +00:00
|
|
|
.SH NAME
|
2008-03-19 07:26:08 +00:00
|
|
|
mount, umount, umount2 \- mount and unmount file systems
|
2004-11-03 13:51:07 +00:00
|
|
|
.SH SYNOPSIS
|
2006-04-25 06:09:55 +00:00
|
|
|
.nf
|
2004-11-03 13:51:07 +00:00
|
|
|
.B "#include <sys/mount.h>"
|
|
|
|
.sp
|
|
|
|
.BI "int mount(const char *" source ", const char *" target ,
|
2006-04-25 06:09:55 +00:00
|
|
|
.BI " const char *" filesystemtype ", unsigned long " mountflags ,
|
|
|
|
.BI " const void *" data );
|
2004-11-03 13:51:07 +00:00
|
|
|
.sp
|
|
|
|
.BI "int umount(const char *" target );
|
|
|
|
.sp
|
|
|
|
.BI "int umount2(const char *" target ", int " flags );
|
2006-04-25 06:09:55 +00:00
|
|
|
.fi
|
2004-11-03 13:51:07 +00:00
|
|
|
.SH DESCRIPTION
|
2005-10-19 06:54:38 +00:00
|
|
|
.BR mount ()
|
2008-03-19 07:26:08 +00:00
|
|
|
attaches the file system specified by
|
2004-11-03 13:51:07 +00:00
|
|
|
.I source
|
|
|
|
(which is often a device name, but can also be a directory name
|
|
|
|
or a dummy) to the directory specified by
|
|
|
|
.IR target .
|
|
|
|
|
2005-10-28 13:40:41 +00:00
|
|
|
.BR umount ()
|
2007-04-12 22:42:49 +00:00
|
|
|
and
|
2005-10-28 13:40:41 +00:00
|
|
|
.BR umount2 ()
|
2008-03-19 07:26:08 +00:00
|
|
|
remove the attachment of the (topmost) file system mounted on
|
2004-11-03 13:51:07 +00:00
|
|
|
.IR target .
|
|
|
|
|
|
|
|
Appropriate privilege (Linux: the
|
|
|
|
.B CAP_SYS_ADMIN
|
2008-03-19 07:26:08 +00:00
|
|
|
capability) is required to mount and unmount file systems.
|
2004-11-03 13:51:07 +00:00
|
|
|
|
2008-03-19 07:26:08 +00:00
|
|
|
Since Linux 2.4 a single file system can be visible at
|
2004-11-03 13:51:07 +00:00
|
|
|
multiple mount points, and multiple mounts can be stacked
|
|
|
|
on the same mount point.
|
|
|
|
.\" Multiple mounts on same mount point: since 2.3.99pre7.
|
|
|
|
|
|
|
|
Values for the
|
2007-09-20 16:26:31 +00:00
|
|
|
.I filesystemtype
|
2004-11-03 13:51:07 +00:00
|
|
|
argument supported by the kernel are listed in
|
|
|
|
.I /proc/filesystems
|
|
|
|
(like "minix", "ext2", "msdos", "proc", "nfs", "iso9660" etc.).
|
|
|
|
Further types may become available when the appropriate modules
|
|
|
|
are loaded.
|
|
|
|
|
|
|
|
The
|
2007-09-20 16:26:31 +00:00
|
|
|
.I mountflags
|
2004-11-03 13:51:07 +00:00
|
|
|
argument may have the magic number 0xC0ED (\fBMS_MGC_VAL\fP)
|
|
|
|
in the top 16 bits (this was required in kernel versions prior to 2.4, but
|
|
|
|
is no longer required and ignored if specified),
|
2007-06-20 21:53:34 +00:00
|
|
|
and various mount flags (as defined in \fI<linux/fs.h>\fP for libc4 and libc5
|
|
|
|
and in \fI<sys/mount.h>\fP for glibc2) in the low order 16 bits:
|
2006-04-25 06:57:00 +00:00
|
|
|
.\" FIXME 2.6.15 added flags for "shared sub-tree" functionality:
|
|
|
|
.\" MS_UNBINDABLE, MS_PRIVATE, MS_SHARED, MS_SLAVE
|
2006-02-08 09:44:13 +00:00
|
|
|
.\" These need to be documented on this page.
|
2008-04-18 17:00:53 +00:00
|
|
|
.\" See:
|
|
|
|
.\" Documentation/filesystems/sharedsubtree.txt
|
|
|
|
.\"
|
|
|
|
.\" http://lwn.net/Articles/159077/
|
|
|
|
.\"
|
|
|
|
.\" http://myweb.sudhaa.com:2022/~ram/sharedsubtree/paper/sharedsubtree.1.pdf
|
|
|
|
.\" Shared-Subtree Concept, Implementation, and Applications in Linux
|
|
|
|
.\" Al Viro viro@ftp.linux.org.uk
|
|
|
|
.\" Ram Pai linuxram@us.ibm.com
|
|
|
|
.\"
|
|
|
|
.\" http://foss.in/2005/slides/sharedsubtree1.pdf
|
|
|
|
.\" Shared Subtree Concept and Implementation in the Linux Kernel
|
|
|
|
.\" Ram Pai
|
|
|
|
.\"
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2007-08-27 10:06:53 +00:00
|
|
|
.BR MS_BIND " (Linux 2.4 onwards)"
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" since 2.4.0-test9
|
|
|
|
Perform a bind mount, making a file or a directory subtree visible at
|
|
|
|
another point within a file system.
|
|
|
|
Bind mounts may cross file system boundaries and span
|
|
|
|
.BR chroot (2)
|
|
|
|
jails.
|
|
|
|
The
|
|
|
|
.IR filesystemtype ", " mountflags ", and " data
|
|
|
|
arguments are ignored.
|
|
|
|
.\" with the exception of the "hidden" MS_REC mountflags bit
|
|
|
|
.TP
|
2005-05-18 14:34:43 +00:00
|
|
|
.BR MS_DIRSYNC " (since Linux 2.5.19)"
|
2004-11-03 13:51:07 +00:00
|
|
|
Make directory changes on this file system synchronous.
|
|
|
|
(This property can be obtained for individual directories
|
|
|
|
or subtrees using
|
2007-10-14 18:33:54 +00:00
|
|
|
.BR chattr (1).)
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B MS_MANDLOCK
|
|
|
|
Permit mandatory locking on files in this file system.
|
|
|
|
(Mandatory locking must still be enabled on a per-file basis,
|
|
|
|
as described in
|
|
|
|
.BR fcntl (2).)
|
2006-03-23 02:13:08 +00:00
|
|
|
.\" FIXME Say more about MS_MOVE
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B MS_MOVE
|
|
|
|
Move a subtree.
|
|
|
|
.I source
|
|
|
|
specifies an existing mount point and
|
|
|
|
.I target
|
|
|
|
specifies the new location.
|
|
|
|
The move is atomic: at no point is the subtree unmounted.
|
|
|
|
The
|
|
|
|
.IR filesystemtype ", " mountflags ", and " data
|
|
|
|
arguments are ignored.
|
|
|
|
.TP
|
|
|
|
.B MS_NOATIME
|
|
|
|
Do not update access times for (all types of) files on this file system.
|
|
|
|
.TP
|
|
|
|
.B MS_NODEV
|
|
|
|
Do not allow access to devices (special files) on this file system.
|
|
|
|
.TP
|
|
|
|
.B MS_NODIRATIME
|
|
|
|
Do not update access times for directories on this file system.
|
2007-12-17 14:21:56 +00:00
|
|
|
This flag provides a subset of the functionality provided by
|
|
|
|
.BR MS_NOATIME ;
|
|
|
|
that is,
|
|
|
|
.BR MS_NOATIME
|
|
|
|
implies
|
|
|
|
.BR MS_NODIRATIME .
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B MS_NOEXEC
|
|
|
|
Do not allow programs to be executed from this file system.
|
|
|
|
.\" (Possibly useful for a file system that contains non-Linux executables.
|
2007-06-08 11:56:22 +00:00
|
|
|
.\" Often used as a security feature, e.g., to make sure that restricted
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" users cannot execute files uploaded using ftp or so.)
|
|
|
|
.TP
|
|
|
|
.B MS_NOSUID
|
2007-06-08 09:56:56 +00:00
|
|
|
Do not honor set-user-ID and set-group-ID bits when executing
|
2004-11-03 13:51:07 +00:00
|
|
|
programs from this file system.
|
2005-07-18 14:25:42 +00:00
|
|
|
.\" (This is a security feature to prevent users executing set-user-ID and
|
|
|
|
.\" set-group-ID programs from removable disk devices.)
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B MS_RDONLY
|
|
|
|
Mount file system read-only.
|
2006-04-25 06:55:21 +00:00
|
|
|
.\"
|
|
|
|
.\" FIXME Document MS_REC, available since 2.4.11.
|
2006-04-25 06:57:00 +00:00
|
|
|
.\" This flag has meaning in conjunction with MS_BIND and
|
|
|
|
.\" also with the shared sub-tree flags.
|
2007-04-12 22:42:49 +00:00
|
|
|
.TP
|
2007-08-27 10:06:53 +00:00
|
|
|
.BR MS_RELATIME " (Since Linux 2.6.20)"
|
2007-02-10 17:37:00 +00:00
|
|
|
When a file on this file system is accessed,
|
2008-03-18 14:11:57 +00:00
|
|
|
only update the file's last access time (atime) if the current value
|
|
|
|
of atime is less than or equal to the file's last modification (mtime)
|
2007-02-10 17:37:00 +00:00
|
|
|
or last status change time (ctime).
|
|
|
|
This option is useful for programs, such as
|
|
|
|
.BR mutt (1),
|
|
|
|
that need to know when a file has been read since it was last modified.
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B MS_REMOUNT
|
2007-04-12 22:42:49 +00:00
|
|
|
Remount an existing mount.
|
2007-08-27 10:06:53 +00:00
|
|
|
This allows you to change the
|
2004-11-03 13:51:07 +00:00
|
|
|
.I mountflags
|
|
|
|
and
|
|
|
|
.I data
|
|
|
|
of an existing mount without having to unmount and remount the file system.
|
|
|
|
.I source
|
|
|
|
and
|
|
|
|
.I target
|
|
|
|
should be the same values specified in the initial
|
|
|
|
.BR mount ()
|
|
|
|
call;
|
|
|
|
.I filesystemtype
|
|
|
|
is ignored.
|
2006-04-25 09:32:44 +00:00
|
|
|
|
|
|
|
The following
|
2007-04-12 22:42:49 +00:00
|
|
|
.I mountflags
|
2006-04-25 09:32:44 +00:00
|
|
|
can be changed:
|
|
|
|
.BR MS_RDONLY ,
|
|
|
|
.BR MS_SYNCHRONOUS ,
|
|
|
|
.BR MS_MANDLOCK ;
|
|
|
|
before kernel 2.6.16, the following could also be changed:
|
2007-09-20 16:26:31 +00:00
|
|
|
.B MS_NOATIME
|
2006-04-25 09:32:44 +00:00
|
|
|
and
|
2006-08-03 02:40:44 +00:00
|
|
|
.BR MS_NODIRATIME ;
|
2008-04-17 14:59:13 +00:00
|
|
|
and, additionally, before kernel 2.4.10, the following could also be changed:
|
2006-04-25 09:32:44 +00:00
|
|
|
.BR MS_NOSUID ,
|
|
|
|
.BR MS_NODEV ,
|
|
|
|
.BR MS_NOEXEC .
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B MS_SYNCHRONOUS
|
|
|
|
Make writes on this file system synchronous (as though
|
|
|
|
the
|
2007-04-12 22:42:49 +00:00
|
|
|
.B O_SYNC
|
2004-11-03 13:51:07 +00:00
|
|
|
flag to
|
|
|
|
.BR open (2)
|
|
|
|
was specified for all file opens to this file system).
|
|
|
|
.PP
|
|
|
|
From Linux 2.4 onwards, the
|
|
|
|
.BR MS_NODEV ", " MS_NOEXEC ", and " MS_NOSUID
|
2006-04-25 08:18:18 +00:00
|
|
|
flags are settable on a per-mount-point basis.
|
2006-05-14 21:36:02 +00:00
|
|
|
From kernel 2.6.16 onwards,
|
2006-04-25 08:18:18 +00:00
|
|
|
.B MS_NOATIME
|
|
|
|
and
|
|
|
|
.B MS_NODIRATIME
|
|
|
|
are also settable on a per-mount-point basis.
|
2007-04-12 22:42:49 +00:00
|
|
|
The
|
|
|
|
.B MS_RELATIME
|
2007-02-10 17:37:00 +00:00
|
|
|
flag is also settable on a per-mount-point basis.
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
The
|
2007-09-20 16:26:31 +00:00
|
|
|
.I data
|
2004-11-03 13:51:07 +00:00
|
|
|
argument is interpreted by the different file systems.
|
|
|
|
Typically it is a string of comma-separated options
|
|
|
|
understood by this file system.
|
|
|
|
See
|
|
|
|
.BR mount (8)
|
|
|
|
for details of the options available for each filesystem type.
|
|
|
|
.PP
|
|
|
|
.\" Note: the kernel naming differs from the glibc naming
|
|
|
|
.\" umount2 is the glibc name for what the kernel now calls umount
|
|
|
|
.\" and umount is the glibc name for oldumount
|
|
|
|
Linux 2.1.116 added the
|
|
|
|
.BR umount2 ()
|
|
|
|
system call, which, like
|
|
|
|
.BR umount (),
|
|
|
|
unmounts a target, but allows additional
|
|
|
|
.I flags
|
2007-06-08 09:56:56 +00:00
|
|
|
controlling the behavior of the operation:
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2005-09-15 12:29:07 +00:00
|
|
|
.BR MNT_FORCE " (since Linux 2.1.116)"
|
2007-04-12 22:42:49 +00:00
|
|
|
Force unmount even if busy.
|
|
|
|
This can cause data loss.
|
2005-05-18 14:34:43 +00:00
|
|
|
(Only for NFS mounts.)
|
2006-04-25 09:13:22 +00:00
|
|
|
.\" FIXME Can MNT_FORCE result in data loss? According to
|
|
|
|
.\" the Solaris manual page it can cause data loss on Solaris.
|
|
|
|
.\" If the same holds on Linux, then this should be documented.
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2005-05-18 14:34:43 +00:00
|
|
|
.BR MNT_DETACH " (since Linux 2.4.11)"
|
2004-11-03 13:51:07 +00:00
|
|
|
Perform a lazy unmount: make the mount point unavailable for
|
|
|
|
new accesses, and actually perform the unmount when the mount point
|
2005-05-18 14:34:43 +00:00
|
|
|
ceases to be busy.
|
|
|
|
.TP
|
|
|
|
.BR MNT_EXPIRE " (since Linux 2.6.8)"
|
|
|
|
Mark the mount point as expired.
|
|
|
|
If a mount point is not currently in use, then an initial call to
|
|
|
|
.BR umount2 ()
|
|
|
|
with this flag fails with the error
|
|
|
|
.BR EAGAIN ,
|
|
|
|
but marks the mount point as expired.
|
|
|
|
The mount point remains expired as long as it isn't accessed
|
|
|
|
by any process.
|
|
|
|
A second
|
|
|
|
.BR umount2 ()
|
|
|
|
call specifying
|
|
|
|
.B MNT_EXPIRE
|
|
|
|
unmounts an expired mount point.
|
2007-04-12 22:42:49 +00:00
|
|
|
This flag cannot be specified with either
|
2005-05-18 14:34:43 +00:00
|
|
|
.B MNT_FORCE
|
|
|
|
or
|
|
|
|
.BR MNT_DETACH .
|
2004-11-03 13:51:07 +00:00
|
|
|
.SH "RETURN VALUE"
|
2007-04-12 22:42:49 +00:00
|
|
|
On success, zero is returned.
|
|
|
|
On error, \-1 is returned, and
|
2004-11-03 13:51:07 +00:00
|
|
|
.I errno
|
|
|
|
is set appropriately.
|
|
|
|
.SH ERRORS
|
|
|
|
The error values given below result from filesystem type independent
|
2007-04-12 22:42:49 +00:00
|
|
|
errors.
|
|
|
|
Each filesystem type may have its own special errors and its
|
|
|
|
own special behavior.
|
|
|
|
See the kernel source code for details.
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B EACCES
|
2007-04-12 22:42:49 +00:00
|
|
|
A component of a path was not searchable.
|
|
|
|
(See also
|
2007-05-26 12:41:39 +00:00
|
|
|
.BR path_resolution (7).)
|
2004-11-03 13:51:07 +00:00
|
|
|
Or, mounting a read-only filesystem was attempted without giving the
|
2007-04-12 22:42:49 +00:00
|
|
|
.B MS_RDONLY
|
2005-05-18 14:34:43 +00:00
|
|
|
flag.
|
2004-11-03 13:51:07 +00:00
|
|
|
Or, the block device
|
|
|
|
.I source
|
2005-05-18 14:34:43 +00:00
|
|
|
is located on a filesystem mounted with the
|
|
|
|
.B MS_NODEV
|
|
|
|
option.
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" mtk: Probably: write permission is required for MS_BIND, with
|
|
|
|
.\" the error EPERM if not present; CAP_DAC_OVERRIDE is required.
|
|
|
|
.TP
|
2005-05-18 14:42:07 +00:00
|
|
|
.B EAGAIN
|
|
|
|
A call to
|
|
|
|
.BR umount2 ()
|
|
|
|
specifying
|
|
|
|
.B MNT_EXPIRE
|
|
|
|
successfully marked an unbusy file system as expired.
|
|
|
|
.TP
|
2004-11-03 13:51:07 +00:00
|
|
|
.B EBUSY
|
|
|
|
.I source
|
2007-04-12 22:42:49 +00:00
|
|
|
is already mounted.
|
|
|
|
Or, it cannot be remounted read-only,
|
2004-11-03 13:51:07 +00:00
|
|
|
because it still holds files open for writing.
|
|
|
|
Or, it cannot be mounted on
|
|
|
|
.I target
|
|
|
|
because
|
|
|
|
.I target
|
|
|
|
is still busy (it is the working directory of some task,
|
|
|
|
the mount point of another device, has open files, etc.).
|
|
|
|
Or, it could not be unmounted because it is busy.
|
|
|
|
.TP
|
|
|
|
.B EFAULT
|
|
|
|
One of the pointer arguments points outside the user address space.
|
|
|
|
.TP
|
|
|
|
.B EINVAL
|
|
|
|
.I source
|
|
|
|
had an invalid superblock.
|
2005-05-18 14:34:43 +00:00
|
|
|
Or, a remount
|
|
|
|
.RB ( MS_REMOUNT )
|
|
|
|
was attempted, but
|
2004-11-03 13:51:07 +00:00
|
|
|
.I source
|
|
|
|
was not already mounted on
|
|
|
|
.IR target .
|
2007-04-12 22:42:49 +00:00
|
|
|
Or, a move
|
2005-05-18 14:34:43 +00:00
|
|
|
.RB ( MS_MOVE )
|
|
|
|
was attempted, but
|
2004-11-03 13:51:07 +00:00
|
|
|
.I source
|
|
|
|
was not a mount point, or was '/'.
|
2005-05-18 14:34:43 +00:00
|
|
|
Or, an unmount was attempted, but
|
2004-11-03 13:51:07 +00:00
|
|
|
.I target
|
|
|
|
was not a mount point.
|
2005-05-18 14:34:43 +00:00
|
|
|
Or,
|
|
|
|
.BR umount2 ()
|
|
|
|
was called with
|
2006-06-13 11:01:55 +00:00
|
|
|
.B MNT_EXPIRE
|
2005-05-18 14:34:43 +00:00
|
|
|
and either
|
|
|
|
.B MNT_DETACH
|
|
|
|
or
|
|
|
|
.BR MNT_FORCE .
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B ELOOP
|
|
|
|
Too many link encountered during pathname resolution.
|
|
|
|
Or, a move was attempted, while
|
|
|
|
.I target
|
|
|
|
is a descendant of
|
|
|
|
.IR source .
|
|
|
|
.TP
|
|
|
|
.B EMFILE
|
|
|
|
(In case no block device is required:)
|
|
|
|
Table of dummy devices is full.
|
|
|
|
.TP
|
|
|
|
.B ENAMETOOLONG
|
2007-06-22 17:16:20 +00:00
|
|
|
A pathname was longer than
|
|
|
|
.BR MAXPATHLEN .
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
|
|
|
.B ENODEV
|
2006-06-08 17:59:39 +00:00
|
|
|
.I filesystemtype
|
2004-11-03 13:51:07 +00:00
|
|
|
not configured in the kernel.
|
|
|
|
.TP
|
|
|
|
.B ENOENT
|
|
|
|
A pathname was empty or had a nonexistent component.
|
|
|
|
.TP
|
|
|
|
.B ENOMEM
|
|
|
|
The kernel could not allocate a free page to copy filenames or data into.
|
|
|
|
.TP
|
|
|
|
.B ENOTBLK
|
|
|
|
.I source
|
|
|
|
is not a block device (and a device was required).
|
|
|
|
.TP
|
|
|
|
.B ENOTDIR
|
|
|
|
The second argument, or a prefix of the first argument, is not
|
|
|
|
a directory.
|
|
|
|
.TP
|
|
|
|
.B ENXIO
|
|
|
|
The major number of the block device
|
|
|
|
.I source
|
|
|
|
is out of range.
|
|
|
|
.TP
|
|
|
|
.B EPERM
|
|
|
|
The caller does not have the required privileges.
|
|
|
|
.SH "CONFORMING TO"
|
2007-12-25 21:28:09 +00:00
|
|
|
These functions are Linux-specific and should not be used in
|
2004-11-03 13:51:07 +00:00
|
|
|
programs intended to be portable.
|
2007-05-18 11:59:14 +00:00
|
|
|
.SH NOTES
|
|
|
|
.SS Linux Notes
|
2004-11-03 13:51:07 +00:00
|
|
|
The original
|
2005-10-19 06:54:38 +00:00
|
|
|
.BR umount ()
|
2007-06-22 17:16:20 +00:00
|
|
|
function was called as \fIumount(device)\fP and would return
|
|
|
|
.B ENOTBLK
|
2004-11-03 13:51:07 +00:00
|
|
|
when called with something other than a block device.
|
|
|
|
In Linux 0.98p4 a call \fIumount(dir)\fP was added, in order to
|
|
|
|
support anonymous devices.
|
|
|
|
In Linux 2.3.99-pre7 the call \fIumount(device)\fP was removed,
|
|
|
|
leaving only \fIumount(dir)\fP (since now devices can be mounted
|
|
|
|
in more than one place, so specifying the device does not suffice).
|
|
|
|
.LP
|
2007-06-22 17:16:20 +00:00
|
|
|
The original
|
2007-09-20 16:26:31 +00:00
|
|
|
.B MS_SYNC
|
2007-06-22 17:16:20 +00:00
|
|
|
flag was renamed
|
2007-09-20 16:26:31 +00:00
|
|
|
.B MS_SYNCHRONOUS
|
2007-06-22 17:16:20 +00:00
|
|
|
in 1.1.69
|
|
|
|
when a different
|
2007-09-20 16:26:31 +00:00
|
|
|
.B MS_SYNC
|
2007-06-22 17:16:20 +00:00
|
|
|
was added to \fI<mman.h>\fP.
|
2004-11-03 13:51:07 +00:00
|
|
|
.LP
|
2005-07-18 14:25:42 +00:00
|
|
|
Before Linux 2.4 an attempt to execute a set-user-ID or set-group-ID program
|
2004-11-03 13:51:07 +00:00
|
|
|
on a filesystem mounted with
|
|
|
|
.B MS_NOSUID
|
|
|
|
would fail with
|
|
|
|
.BR EPERM .
|
2007-04-12 22:42:49 +00:00
|
|
|
Since Linux 2.4 the set-user-ID and set-group-ID bits are
|
2005-07-18 14:25:42 +00:00
|
|
|
just silently ignored in this case.
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" The change is in patch-2.4.0-prerelease.
|
|
|
|
.SH "SEE ALSO"
|
2007-05-26 12:41:39 +00:00
|
|
|
.BR path_resolution (7),
|
2004-11-03 13:51:07 +00:00
|
|
|
.BR mount (8),
|
|
|
|
.BR umount (8)
|