RMDIR(2)

NOM
rmdir - Supprimer un répertoire

SYNOPSIS
#include <unistd.h>

int rmdir(const char *pathname);

DESCRIPTION
rmdir() supprime le répertoire pathname, lequel doit être vide.

VALEUR RENVOYÉE
rmdir() renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.

ERREURS

EACCES
    Les droits d'écriture dans le répertoire contenant pathname ne sont pas autorisés, ou bien un des répertoires de pathname ne permet pas le parcours. (Voir aussi path_resolution(7).)

EBUSY
    pathname est actuellement utilisé par le système ou un processus qui empêche sa suppression. Sous Linux, cela signifie que pathname est actuellement utilisé comme point de montage ou que c'est le répertoire du processus appelant.

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

EINVAL
    pathname a . comme dernier composant.

ELOOP
    pathname contient une référence circulaire (à travers un lien symbolique).

ENAMETOOLONG
    pathname est trop long.

ENOMEM
    Pas assez de mémoire pour le noyau.

ENOENT
    Un répertoire contenu dans pathname n'existe pas, ou est un lien symbolique pointant nulle part.

ENOTDIR
    pathname, ou un élément contenu dans pathname, n'est pas un répertoire.

ENOTEMPTY
    pathname contient d'autres éléments que . et .. ; ou pathname a .. comme composant final.

EPERM
    Le répertoire contenant pathname a son sticky bit positionné, (S_ISVTX) et l'UID effectif du processus n'est pas le même que celui du répertoire à supprimer, ou celui du répertoire le contenant, et le processus n'est pas privilégié (sous Linux : n'a pas la capacité CAP_FOWNER).

EPERM
    Le système de fichiers contenant pathname ne permet pas la suppression de répertoires.

EROFS
    pathname correspond à un répertoire sur un système de fichiers en lecture seule.

CONFORMITÉ
SVr4, BSD 4.3, POSIX.1-2001.

BOGUES
Des problèmes avec le protocole sous-jacent des systèmes de fichiers NFS peuvent provoquer la disparition inattendue de répertoires encore utilisés.

VOIR AUSSI
rm(1), rmdir(1), chdir(2), chmod(2), mkdir(2), rename(2), unlink(2), unlinkat(2)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 13 octobre 1996 et révisée le 22 décembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 rmdir ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.