Provided by: manpages-dev_6.16-1build1_all bug

NAME

       rmdir - delete a directory

LIBRARY

       Standard C library (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       int rmdir(const char *path);

DESCRIPTION

       rmdir() deletes a directory, which must be empty.

RETURN VALUE

       On success, zero is returned.  On error, -1 is returned, and errno is set to indicate the error.

ERRORS

       EACCES Write  access  to  the directory containing path was not allowed, or one of the directories in the
              path prefix of path did not allow search permission.  (See also path_resolution(7).)

       EBUSY  path is currently in use by the system or some process that prevents its removal.  On Linux,  this
              means path is currently used as a mount point or is the root directory of the calling process.

       EFAULT path points outside your accessible address space.

       EINVAL path has .  as last component.

       ELOOP  Too many symbolic links were encountered in resolving path.

       ENAMETOOLONG
              path was too long.

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

       ENOMEM Insufficient kernel memory was available.

       ENOTDIR
              path, or a component used as a directory in path, is not, in fact, a directory.

       ENOTEMPTY
              path contains entries other than .  and ..; or, path has ..  as its final component.  POSIX.1 also
              allows EEXIST for this condition.

       EPERM  The directory containing path has the sticky bit (S_ISVTX) set and the process's effective user ID
              is  neither the user ID of the file to be deleted nor that of the directory containing it, and the
              process is not privileged (Linux: does not have the CAP_FOWNER capability).

       EPERM  The filesystem containing path does not support the removal of directories.

       EROFS  path refers to a directory on a read-only filesystem.

STANDARDS

       POSIX.1-2024.

HISTORY

       POSIX.1-2001, SVr4, 4.3BSD.

BUGS

       Infelicities in the protocol underlying NFS can cause the unexpected disappearance of  directories  which
       are still being used.

SEE ALSO

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

Linux man-pages 6.16                               2025-10-29                                           rmdir(2)