mount(2) mount(2)
NAME
mount - mount a file system
SYNOPSIS
#include <sys/types.h>
#include <sys/mount.h>
int mount (const char *spec, const char *dir, int mflag,
.../* char *fstyp, const char *dataptr, int datalen*/);
DESCRIPTION
mount requests that a removable file system contained on the
block special file identified by spec be mounted on the
directory identified by dir. spec and dir are pointers to
path names. fstyp is the file system type number. The
sysfs(2) system call can be used to determine the file system
type number. If both the MS_DATA and MS_FSS flag bits of
mflag are off, the file system type defaults to the root file
system type. Only if either flag is on is fstyp used to
indicate the file system type.
If the MS_DATA flag is set in mflag the system expects the
dataptr and datalen arguments to be present. Together they
describe a block of file-system specific data at address
dataptr of length datalen. This is interpreted by file-system
specific code within the operating system and its format
depends on the file system type. If a particular file system
type does not require this data, dataptr and datalen should
both be zero. Note that MS_FSS is obsolete and is ignored if
MS_DATA is also set, but if MS_FSS is set and MS_DATA is not,
dataptr and datalen are both assumed to be zero.
After a successful call to mount, all references to the file
dir refer to the root directory on the mounted file system.
The low-order bit of mflag is used to control write permission
on the mounted file system: if 1, writing is forbidden;
otherwise writing is permitted according to individual file
accessibility.
mount may be invoked only by a process with the P_MOUNT
privilege. It is intended for use only by the mount utility.
Return Values
On success, mount returns 0. On failure, mount returns -1 and
sets errno to identify the error.
Copyright 1994 Novell, Inc. Page 1
mount(2) mount(2)
Errors
In the following conditions, mount fails and sets errno to:
EACCES Search permission is denied on a component
of dir or spec.
ENOLOAD Failure in loading a loadable exec module
EPERM The calling process does not have the
P_MOUNT privilege.
EBUSY dir is currently mounted on, is someone's
current working directory, or is otherwise
busy.
EBUSY The device associated with spec is
currently mounted.
EBUSY There are no more mount table entries.
EFAULT spec, dir, or datalen points outside the
allocated address space of the process.
EINVAL The super block has an invalid magic
number or the fstyp is invalid.
ELOOP Too many symbolic links were encountered
in translating spec or dir.
ENAMETOOLONG The length of the path argument exceeds
{PATH_MAX}, or the length of a path
component exceeds {NAME_MAX} while
_POSIX_NO_TRUNC is in effect.
ENOENT None of the named files exists or is a
null pathname.
ENOLOAD Cannot load file system name.
ENOTDIR A component of a path prefix is not a
directory.
EREMOTE spec is remote and cannot be mounted.
Copyright 1994 Novell, Inc. Page 2
mount(2) mount(2)
ENOLINK path points to a remote machine and the
link to that machine is no longer active.
EMULTIHOP Components of path require hopping to
multiple remote machines and the file
system type does not allow it.
ENOTBLK spec is not a block special device.
ENXIO The device associated with spec does not
exist.
ENOTDIR dir is not a directory.
EROFS spec is write protected and mflag requests
write permission.
ENOSPC The file system state in the super-block
is not FsOKAY and there is no space left
on the device.
REFERENCES
mount(1M), sysfs(2), umount(2)
Copyright 1994 Novell, Inc. Page 3