unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (SunOS-5.10)
Page:
Section:
Apropos / Subsearch:
optional field

mount(2)                         System Calls                         mount(2)



NAME
       mount - mount a file system

SYNOPSIS
       #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);

DESCRIPTION
       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
       names.

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

       The  fstype argument is the file system type name. Standard file system
       names are defined with the prefix MNTTYPE_ in <&lt;sys/mntent.h>&gt;.  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 <&lt;sys/mount.h>&gt;.

       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
                       options 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
                       nosuid), are separated  by  "="  such  as  dev=2c4046c.
                       Standard  option  names  are defined in <&lt;sys/mntent.h>&gt;.
                       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_MNTOPT_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 input option string may also be returned in  the
                       recognized 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
                       incapable of writing (for example, CDROM). Without this
                       flag, writing is permitted according to individual file
                       accessibility.



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



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

ERRORS
       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
                       process.



       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
                       attempted  on  a  file  system  that  does  not support
                       remounting.



       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.



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

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

NOTES
       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)