Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
mount(2)			 System	Calls			      mount(2)

       mount - mount a file system

       #include	<sys/types.h>
       #include	<sys/mount.h>
       #include	<sys/mntent.h>

       int  mount(const	 char *spec, const char	*dir, int mflag, char *fstype,
       char *dataptr, int datalen, char	*optptr, int optlen);

       The mount() function requests that a removable file system contained on
       the  block  special file	identified by spec be mounted on the directory
       identified by dir. The spec and dir  arguments  are  pointers  to  path

       After  a	successful call	to mount(), all	references to the file dir re-
       fer to the root directory on the	mounted	file system. The mounted  file
       system  is  inserted  into the kernel list of all mounted file systems.
       This list can be	examined through the mounted file  system  table  (see

       The  fstype argument is the file	system type name. Standard file	system
       names are defined with the prefix MNTTYPE_ in <sys/mntent.h>.  If  nei-
       ther  MS_DATA  nor MS_OPTIONSTR is set in mflag,	then fstype is ignored
       and the type of the root	file system is assumed.

       The dataptr argument is 0 if no file  system-specific  data  is	to  be
       passed;	otherwise  it  points to an area of size datalen that contains
       the file	system-specific	data for  this	mount  and  the	 MS_DATA  flag
       should be set.

       If  the	MS_OPTIONSTR  flag is set, then	optptr points to a buffer con-
       taining the list	of options to be used for this mount. The optlen argu-
       ment  specifies	the length of the buffer. On completion	of the mount()
       call, the options in effect for the mounted file	system are returned in
       this  buffer.  If  MS_OPTIONSTR	is not specified, then the options for
       this mount will not appear in the mounted file systems table.

       If the caller does not have all privileges  available  in  the  current
       zone,  the  nosuid  option is automatically set on the mount point. The
       restrict	option is automatically	added for autofs mounts.

       If the caller is	not in the global zone,	the nodevices option is	 auto-
       matically set.

       The  mflag  argument  is	constructed by a bitwise-inclusive-OR of flags
       from the	following list,	defined	in <sys/mount.h>.

       MS_DATA	       The dataptr and datalen arguments describe a  block  of
		       file  system-specific binary data at address dataptr of
		       length datalen. This is interpreted by file system-spe-
		       cific  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 0.

       MS_GLOBAL       Mount a file system globally if the system  is  config-
		       ured and	booted as part of a cluster (see clinfo(1M)).

       MS_NOSUID       Prevent	programs  that	are marked set-user-ID or set-
		       group-ID	from executing (see chmod(1)). It also	causes
		       open(2)	to  return ENXIO when attempting to open block
		       or character special files.

       MS_OPTIONSTR    The optptr and optlen arguments	describe  a  character
		       buffer  at  address optptr of size optlen. When calling
		       mount(),	the character buffer should  contain  a	 null-
		       terminated  string  of options to be passed to the file
		       system-specific code within the operating system. On  a
		       successful  return,  the	file system-specific code will
		       return the list of options recognized. Unrecognized op-
		       tions  are  ignored. The	format of the string is	a list
		       of option names separated by commas. Options that  have
		       values  (rather than binary options such	as suid	or no-
		       suid), are separated by "=" such	as dev=2c4046c.	 Stan-
		       dard  option  names are defined in <sys/mntent.h>. Only
		       strings defined in the "C" locale  are  supported.  The
		       maximum	length	option string that can be passed to or
		       returned	from a mount() call is defined by the  MAX_MN-
		       TOPT_STR	 constant. The buffer should be	long enough to
		       contain more options than were passed in, as the	 state
		       of  any default options that were not passed in the in-
		       put option string may also be returned  in  the	recog-
		       nized options list that is returned.

       MS_OVERLAY      Allow  the  file	 system	to be mounted over an existing
		       file system mounted on dir, making the underlying  file
		       system  inaccessible. If	a mount	is attempted on	a pre-
		       existing	mount point without  setting  this  flag,  the
		       mount will fail.

       MS_RDONLY       Mount  the  file	 system	 for  reading  only. This flag
		       should also be specified	for file systems that are  in-
		       capable	of  writing (for example, CDROM). Without this
		       flag, writing is	permitted according to individual file

       MS_REMOUNT      Remount a read-only file	system as read-write.

       Upon  successful	 completion,  0	is returned. Otherwise,	-1 is returned
       and errno is set	to indicate the	error.

       The mount() function will fail if:

       EACCES	       The permission bits of the mount	point  do  not	permit
		       read/write  access  or search permission	is denied on a
		       component of the	path prefix.

		       The calling process is not the owner of the mountpoint.

		       The mountpoint is not a regular file or a directory and
		       the  caller does	not have all privileges	available in a
		       its zone.

		       The special device device does not permit  read	access
		       in the case of read-only	mounts or read-write access in
		       the case	of read/write mounts.

       EBUSY	       The dir argument	is currently mounted on, is  someone's
		       current working directory, or is	otherwise busy;	or the
		       device associated with spec is currently	mounted.

       EFAULT	       The spec, dir,  fstype,	dataptr,  or  optptr  argument
		       points  outside	the  allocated	address	 space	of the

       EINVAL	       The super block has an invalid magic number, the	fstype
		       is invalid, or dir is not an absolute path.

       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.

       ENOLINK	       The path	argument points	to a remote  machine  and  the
		       link to that machine is no longer active.

       ENOSPC	       The  file system	state in the super-block is not	FsOKAY
		       and mflag requests write	permission.

       ENOTBLK	       The spec	argument is not	a block	special	device.

       ENOTDIR	       The dir argument	is not a directory, or a component  of
		       a path prefix is	not a directory.

       ENOTSUP	       A  global mount is attempted (the MS_GLOBAL flag	is set
		       in mflag) on a machine which is not booted as  a	 clus-
		       ter;  a	local  mount  is attempted and dir is within a
		       globally	mounted	file system;  or  a  remount  was  at-
		       tempted on a file system	that does not support remount-

       ENXIO	       The device associated with spec does not	exist.

       EOVERFLOW       The length of the option	string to be returned  in  the
		       optptr  argument	 exceeds the size of the buffer	speci-
		       fied by optlen.

       EPERM	       The {PRIV_SYS_MOUNT} privilege is not asserted  in  the
		       effective set of	the calling process.

       EREMOTE	       The spec	argument is remote and cannot be mounted.

       EROFS	       The spec	argument is write protected and	mflag requests
		       write permission.

       The mount() function can	be invoked only	by processes with  appropriate

       mount(1M), umount(2), mnttab(4)

       MS_OPTIONSTR-type option	strings	should be used.

       Some  flag  bits	 set file system options that can also be passed in an
       option string. Options are first	set from the option  string  with  the
       last setting of an option in the	string determining the value to	be set
       by the option string. Any options controlled by flags are then applied,
       overriding any value set	by the option string.

SunOS 5.10			  26 Feb 2004			      mount(2)


Want to link to this manual page? Use this URL:

home | help