rmdir(2) borra un directorio

SINOPSIS

#include <unistd.h>

int rmdir(const char *pathname);

DESCRIPCIÓN

rmdir borra un directorio, el cual debe estar vacío.

VALOR DEVUELTO

En caso de éxito se devuelve cero. Si se produjo algún error, se devuelve -1 y se modifica errno con el valor apropiado.

ERRORES

EPERM
El sistema de ficheros que contiene pathname no soporta el borrado de directorios.
EFAULT
pathname apunta fuera de tu espacio de direccionamiento accesible.
EACCES
El identificador de usuario efectivo del proceso no tiene permiso de escritura sobre el directorio que contiene pathname o uno de los directorios en pathname no tenía permiso de búsqueda(ejecución).
EPERM
EL directorio que contiene pathname tiene activo el bit pegajoso (sticky) (S_ISVTX) y el identificador efectivo del proceso no es ni el identificador de usuario del fichero a ser borrado ni el del directorio que lo contiene.
ENAMETOOLONG
pathname era demasiado largo.
ENOENT
Un directorio de la ruta pathname no existe o es un enlace simbólico roto.
ENOTDIR
pathname, o un componente usado como un directorio en pathname no es en realidad un directorio.
ENOTEMPTY
pathname contiene otras entradas tales como . y .. .
EBUSY
pathname es el directorio de trabajo actual o directorio raíz de algún proceso.
ENOMEM
Memoria insuficiente en el núcleo.
EROFS
pathname se refiere a un fichero sobre un sistema de ficheros de sólo lectura.
ELOOP
Se han encontrado demasiados enlaces simbólicos al resolver pathname.

CONFORME A

SVr4, SVID, POSIX, BSD 4.3

FALLOS

Algunos hechos desafortunados del protocolo NFS subyacente pueden provocar la desaparición inesperada de directorios que todavía se están usando.