MKDIR(2)

NOM
mkdir - Creer un repertoire.

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

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

DESCRIPTION
mkdir cree un nouveau repertoire nomme pathname. mode specifie les permissions a appliquer au repertoire. Cette valeur peut etre modifie par le umask du processus : les permissions du repertoire effectivement cree vaudront (mode & ~umask). Le repertoire nouvellement cree aura pour proprietaire l'UID effectif du processus. Si le repertoire au-dessus du nouveau repertoire a son bit Set-GID a 1, ou si le systeme de fichier est monte avec une semantique de groupe BSD, le nouveau repertoire heritera de l'appartenance au groupe de son parent. Sinon il appartiendra au groupe correspondant au GID effectif du processus. Si le repertoire parent a son bit Set-GID a 1, le nouveau repertoire aura aussi son bit Set-GID a 1.

VALEUR RENVOYEE
mkdir renvoie 0 s'il reussit, ou -1 s'il echoue, auquel cas errno contient le code d'erreur.

ERREURS

EEXIST
    pathname existe deja (pas necessairement un repertoire).

EFAULT
    pathname pointe en-dehors de l'espace d'adressage accessible.

EACCES
    Le repertoire parent n'autorise pas l'ecriture au processus, ou l'un des repertoires de pathname n'autorise pas la consultation de son contenu.

ENAMETOOLONG
    pathname trop long.

ENOENT
    Un repertoire du chemin d'acces pathname n'existe pas ou est un lien symbolique pointant nulle part.

ENOTDIR
    Un element utilise dans le chemin pathname n'est pas un repertoire.

ENOMEM
    Pas assez de memoire pour le noyau.

EROFS
    pathname correspond a un fichier sur un systeme de fichier en lecture seule.

ELOOP
    pathname contient une reference circulaire (a travers un lien symbolique).

ENOSPC
    Le peripherique contenant pathname n'a pas assez de place pour le nouveau repertoire. Cette erreur se produit egalement si le quota de disque de l'utilisateur est depasse.

CONFORMITE
SVr4, POSIX, BSD, SYSV, X/OPEN, SVr4 indique des conditions d'erreur supplementaires EIO, EMULTIHOP, et ENOLINK. POSIX.1 omet ELOOP.

Il y a de nombreux problemes avec le protocole sous-jacent a NFS, certains d'entre-eux peuvent affecter mkdir.

VOIR AUSSI
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).