MAN sezione 2 - Torna all'indice
MAN PAGE: MKDIR(2)Contents
mkdir - create a directory
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>
#include <unistd.h>
int mkdir(const char *pathname, mode_t mode);
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.
mkdir returns zero on success, or -1 if an error occurred
(in which case, errno is set appropriately).
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 filesys
tem.
ELOOP Too many symbolic links were encountered in resolv
ing pathname.
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.
SVr4, POSIX, BSD, SYSV, X/OPEN. SVr4 documents additional
EIO, EMULTIHOP and ENOLINK error conditions; POSIX.1 omits
ELOOP.
There are many infelicities in the protocol underlying
NFS. Some of these affect mkdir.
read(2), write(2), fcntl(2), close(2), unlink(2), open(2),
mknod(2), stat(2), umask(2), mount(2), socket(2), fopen(3)
Linux 1.0 29 March 1994 2 |