Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > M


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


mount() — mount a file system


#include <sys/mount.h> int mount(const char *fs, const char *path, int mflag); int mount(const char *fs, const char *path, int mflag, const char *fstype, const char *dataptr, int datalen);


The mount() system call requests that a file system identified by fs be mounted on the file identified by path.

mflag contains a bit-mask of flags (described below). Note that the MS_DATA flag must be set for the six-argument version of the call.

fstype is the file system type name. It is the same name that sysfs() uses.

The last two arguments together 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 upon the file system type. A particular file system type may not require this data, in which case dataptr and datalen should both be zero. The mounting of some file system types may be restricted to a user with appropriate privileges.

mount() can be invoked only by a user who has appropriate privileges.

Upon successful completion, references to the file path will refer to the root directory of the mounted file system.

mflag contains a bit-mask of flag values, which includes the following defined in <sys/mount.h>:


This is ordinarily required. It indicates the presence of the fstype, dataptr, and datalen arguments.

(For backward compatibility, if this flag is not set, the fstype is assumed to be that of the root file system, and dataptr and datalen are assumed to be zero.)


This is used to control write permission on the mounted file system. If not set, writing is permitted according to individual file accessibility.


This flag disables set-user-ID and set-group-ID behavior on this file system.



This causes user quotas to be enabled if the file system supports user quotas.


This causes group quotas to be enabled if the file system supports group quotas.

If fstype is specified as:


Mount a local HFS file system. dataptr points to a structure of the following format, if the options described below need to be specified for the mount:

struct ufs_args { char *fspec; int flags; };

fspec points to the name of the block special file that is to be mounted. This is identical in use and function to the first argument, fs, of the system call.

flags points to a bit map that sets options. The following values of the bits are defined in <sys/mount.h>:


Writes to disks are to be delayed until the buffer needs to be reused. This is the default.


Writes to disks are to be done asynchronously, where possible, without waiting for completion.

MS_BEHIND and MS_DELAY are mutually exclusive.


Rigorous posting of file system metadata is to be used. This is the default.


Relaxed posting of file system metadata is to be used. This may lead to better performance for certain applications, but there is increased potential for data loss in case of a crash.

MS_FSASYNC and MS_NO_FSASYNC are mutually exclusive.


mount() returns the following values:


Successful completion.


Failure. errno is set to indicate the error.


If mount() fails, errno is set to one of the following values.


A component of the path prefix denies search permission.


path is currently mounted on, is someone's current working directory, or is otherwise busy.


The file system associated with fs is currently mounted.


The system cannot allocate the necessary resources for this mount.


fs, path or dataptr points outside the allocated address space of the process. The reliable detection of this error is implementation dependent.


An argument to the system call is invalid, or a sanity check failed.


Too many symbolic links were encountered in translating a path name argument.


The length of a path name exceeds PATH_MAX, or a path name component is longer than NAME_MAX while _POSIX_NO_TRUNC is in effect.


fstype is a file system that is not been configured into the kernel.


A named file does not exist.


fs or path is null.


fs is not a block special device and the file system type requires it to be.


A component of a path prefix is not a directory.


path is not a directory.


The device associated with fs does not exist and the file system type requires it to be.


The process does not have the appropriate privilege and the file system type requires it.


The requested file system is write protected and mflag requests write permission.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.