mkdir

Hurricane Electric Internet Services: Accounts starting at $9.95/month
Hurricane Electric Internet Services

NAME

       mkdir - create a directory


SYNOPSIS

       #include <sys/types.h>
       #include <fcntl.h>
       #include <unistd.h>

       int mkdir(const char *pathname, mode_t mode);


DESCRIPTION

       mkdir attempts to create a directory named pathname.

       mode  specifies  the permissions to use. It is modified by
       the process's umask in the usual way: the  permissions  of
       the created file are (mode & ~umask).

       The newly created directory will be owned by the effective
       uid of the process.  If the directory containing the  file
       has  the  set  group  id  bit set, or if the filesystem is
       mounted with BSD group semantics, the new  directory  will
       inherit  the group ownership from its parent; otherwise it
       will be owned by the effective gid of the process.

       If the parent directory has the set group id bit set  then
       so will the newly created directory.



RETURN VALUE

       mkdir  returns zero on success, or -1 if an error occurred
       (in which case, errno is set appropriately).


ERRORS

       EEXIST pathname  already  exists  (not  necessarily  as  a
              directory).

       EFAULT pathname  points  outside  your  accessible address
              space.

       EACCES The parent directory does not allow  write  permis-
              sion  to  the process, or one of the directories in
              pathname did not allow search (execute) permission.

       ENAMETOOLONG
              pathname was too long.

       ENOENT A directory component in pathname does not exist or
              is a dangling symbolic link.

       ENOTDIR
              A component used as a directory in pathname is not,
              in fact, a directory.

       ENOMEM Insufficient kernel memory was available.
       EROFS  pathname refers to a file on a read-only filesystem
              and write access was requested.

       ELOOP  pathname contains a reference to  a  circular  sym-
              bolic link, ie a symbolic link whose expansion con-
              tains a reference to itself.

       ENOSPC The device containing pathname has no room for  the
              new  directory.  ENOSPC The new directory cannot be
              created because the user's disk quota is exhausted.


CONFORMING TO


BUGS

       In some older versions of Linux (for example, 0.99pl7) all
       the normal filesystems sometime allow the creation of  two
       files  in  the  same  directory  with the same name.  This
       occurs only rarely and only on a  heavily  loaded  system.
       It  is  believed  that  this  bug  was  fixed in the Minix
       filesystem in Linux 0.99pl8 pre-release; and it  is  hoped
       that  it was fixed in the other filesystems shortly after-
       wards.

       There are many infelicities  in  the  protocol  underlying
       NFS.


SEE ALSO

       read(2), write(2), fcntl(2), close(2), unlink(2), open(2),
       mknod(2),   stat(2),   umask(2),   mount(2),    socket(2),
       socket(2), fopen(3).
Hurricane Electric Internet Services: Accounts starting at $9.95/month
Hurricane Electric Internet Services
Copyright (C) 1998 Hurricane Electric. All Rights Reserved.