The error values given below result from filesystem type
independent errors. Each filesystem type may have its own
special errors and its own special behavior. See the Linux
kernel source code for details.
EACCES
A component of a path was not searchable. (See also
path_resolution(7).)
EACCES
Mounting a read-only filesystem was attempted without
giving the MS_RDONLY
flag.
The filesystem may be read-only for various reasons,
including: it resides on a read-only optical disk; it is
resides on a device with a physical switch that has been
set to mark the device read-only; the filesystem
implementation was compiled with read-only support; or
errors were detected when initially mounting the
filesystem, so that it was marked read-only and can't be
remounted as read-write (until the errors are fixed).
Some filesystems instead return the error EROFS
on an
attempt to mount a read-only filesystem.
EACCES
The block device source is located on a filesystem mounted
with the MS_NODEV
option.
EBUSY
An attempt was made to stack a new mount directly on top
of an existing mount point that was created in this mount
namespace with the same source and target.
EBUSY
source cannot be remounted read-only, because it still
holds files open for writing.
EFAULT
One of the pointer arguments points outside the user
address space.
EINVAL
source had an invalid superblock.
EINVAL
A remount operation (MS_REMOUNT
) was attempted, but source
was not already mounted on target.
EINVAL
A move operation (MS_MOVE
) was attempted, but the mount
tree under source includes unbindable mounts and target is
a mount that has propagation type MS_SHARED
.
EINVAL
A move operation (MS_MOVE
) was attempted, but the parent
mount of source mount has propagation type MS_SHARED
.
EINVAL
A move operation (MS_MOVE
) was attempted, but source was
not a mount, or was '/'.
EINVAL
A bind operation (MS_BIND
) was requested where source
referred a mount namespace magic link (i.e., a
/proc/[pid]/ns/mnt magic link or a bind mount to such a
link) and the propagation type of the parent mount of
target was MS_SHARED
, but propagation of the requested
bind mount could lead to a circular dependency that might
prevent the mount namespace from ever being freed.
EINVAL
mountflags includes more than one of MS_SHARED
,
MS_PRIVATE
, MS_SLAVE
, or MS_UNBINDABLE
.
EINVAL
mountflags includes MS_SHARED
, MS_PRIVATE
, MS_SLAVE
, or
MS_UNBINDABLE
and also includes a flag other than MS_REC
or MS_SILENT
.
EINVAL
An attempt was made to bind mount an unbindable mount.
EINVAL
In an unprivileged mount namespace (i.e., a mount
namespace owned by a user namespace that was created by an
unprivileged user), a bind mount operation (MS_BIND
) was
attempted without specifying (MS_REC
), which would have
revealed the filesystem tree underneath one of the
submounts of the directory being bound.
ELOOP
Too many links encountered during pathname resolution.
ELOOP
A move operation was attempted, and target is a descendant
of source.
EMFILE
(In case no block device is required:) Table of dummy
devices is full.
ENAMETOOLONG
A pathname was longer than MAXPATHLEN
.
ENODEV
filesystemtype not configured in the kernel.
ENOENT
A pathname was empty or had a nonexistent component.
ENOMEM
The kernel could not allocate a free page to copy
filenames or data into.
ENOTBLK
source is not a block device (and a device was required).
ENOTDIR
target, or a prefix of source, is not a directory.
ENXIO
The major number of the block device source is out of
range.
EPERM
The caller does not have the required privileges.
EPERM
An attempt was made to modify (MS_REMOUNT
) the MS_RDONLY
,
MS_NOSUID
, or MS_NOEXEC
flag, or one of the "atime" flags
(MS_NOATIME
, MS_NODIRATIME
, MS_RELATIME
) of an existing
mount, but the mount is locked; see mount_namespaces(7).
EROFS
Mounting a read-only filesystem was attempted without
giving the MS_RDONLY
flag. See EACCES
, above.