summaryrefslogtreecommitdiffstats
path: root/man2/rmdir.2
diff options
context:
space:
mode:
Diffstat (limited to 'man2/rmdir.2')
-rw-r--r--man2/rmdir.2128
1 files changed, 128 insertions, 0 deletions
diff --git a/man2/rmdir.2 b/man2/rmdir.2
new file mode 100644
index 0000000..5bd7370
--- /dev/null
+++ b/man2/rmdir.2
@@ -0,0 +1,128 @@
+.\" This manpage is Copyright (C) 1992 Drew Eckhardt;
+.\" and Copyright (C) 1993 Michael Haardt, Ian Jackson.
+.\"
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
+.\"
+.\" Modified 1993-07-24 by Rik Faith <faith@cs.unc.edu>
+.\" Modified 1997-01-31 by Eric S. Raymond <esr@thyrsus.com>
+.\" Modified 2004-06-23 by Michael Kerrisk <mtk.manpages@gmail.com>
+.\"
+.TH rmdir 2 2023-03-30 "Linux man-pages 6.05.01"
+.SH NAME
+rmdir \- delete a directory
+.SH LIBRARY
+Standard C library
+.RI ( libc ", " \-lc )
+.SH SYNOPSIS
+.nf
+.B #include <unistd.h>
+.PP
+.BI "int rmdir(const char *" pathname );
+.fi
+.SH DESCRIPTION
+.BR rmdir ()
+deletes a directory, which must be empty.
+.SH RETURN VALUE
+On success, zero is returned.
+On error, \-1 is returned, and
+.I errno
+is set to indicate the error.
+.SH ERRORS
+.TP
+.B EACCES
+Write access to the directory containing
+.I pathname
+was not allowed, or one of the directories in the path prefix of
+.I pathname
+did not allow search permission.
+(See also
+.BR path_resolution (7).)
+.TP
+.B EBUSY
+.I pathname
+is currently in use by the system or some process that prevents its
+removal.
+On Linux, this means
+.I pathname
+is currently used as a mount point
+or is the root directory of the calling process.
+.TP
+.B EFAULT
+.IR pathname " points outside your accessible address space."
+.TP
+.B EINVAL
+.I pathname
+has
+.I .
+as last component.
+.TP
+.B ELOOP
+Too many symbolic links were encountered in resolving
+.IR pathname .
+.TP
+.B ENAMETOOLONG
+.IR pathname " was too long."
+.TP
+.B ENOENT
+A directory component in
+.I pathname
+does not exist or is a dangling symbolic link.
+.TP
+.B ENOMEM
+Insufficient kernel memory was available.
+.TP
+.B ENOTDIR
+.IR pathname ,
+or a component used as a directory in
+.IR pathname ,
+is not, in fact, a directory.
+.TP
+.B ENOTEMPTY
+.I pathname
+contains entries other than
+.IR . " and " .. " ;"
+or,
+.I pathname
+has
+.I ..
+as its final component.
+POSIX.1 also allows
+.\" POSIX.1-2001, POSIX.1-2008
+.B EEXIST
+for this condition.
+.TP
+.B EPERM
+The directory containing
+.I pathname
+has the sticky bit
+.RB ( 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
+.B CAP_FOWNER
+capability).
+.TP
+.B EPERM
+The filesystem containing
+.I pathname
+does not support the removal of directories.
+.TP
+.B EROFS
+.I pathname
+refers to a directory on a read-only filesystem.
+.SH STANDARDS
+POSIX.1-2008.
+.SH HISTORY
+POSIX.1-2001, SVr4, 4.3BSD.
+.SH BUGS
+Infelicities in the protocol underlying NFS can cause the unexpected
+disappearance of directories which are still being used.
+.SH SEE ALSO
+.BR rm (1),
+.BR rmdir (1),
+.BR chdir (2),
+.BR chmod (2),
+.BR mkdir (2),
+.BR rename (2),
+.BR unlink (2),
+.BR unlinkat (2)