Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
RMDIR(2)		      System Calls Manual		      RMDIR(2)

NAME
       rmdir --	remove a directory file

LIBRARY
       Standard	C Library (libc, -lc)

SYNOPSIS
       #include	<unistd.h>

       int
       rmdir(const char	*path);

DESCRIPTION
       The rmdir() system call removes a directory file	whose name is given by
       path.  The directory must not have any entries other than `.' and `..'.

RETURN VALUES
       The  rmdir()  function returns the value	0 if successful; otherwise the
       value -1	is returned and	the global variable errno is set  to  indicate
       the error.

ERRORS
       The named file is removed unless:

       [ENOTDIR]	  A component of the path is not a directory.

       [ENAMETOOLONG]	  A  component	of a pathname exceeded 255 characters,
			  or an	entire path name exceeded 1023 characters.

       [ENOENT]		  The named directory does not exist.

       [ELOOP]		  Too many symbolic links were encountered  in	trans-
			  lating the pathname.

       [ENOTEMPTY]	  The  named  directory	 contains files	other than `.'
			  and `..' in it.

       [EACCES]		  Search permission is denied for a component  of  the
			  path prefix.

       [EACCES]		  Write	permission is denied on	the directory contain-
			  ing the link to be removed.

       [EPERM]		  The  directory  to be	removed	has its	immutable, un-
			  deletable  or	 append-only   flag   set,   see   the
			  chflags(2) manual page for more information.

       [EPERM]		  The  parent directory	of the directory to be removed
			  has its immutable or append-only flag	set.

       [EPERM]		  The directory	containing the directory to be removed
			  is marked sticky, and	neither	the containing	direc-
			  tory	nor  the  directory to be removed are owned by
			  the effective	user ID.

       [EINVAL]		  The last component of	the path is `.'	or `..'.

       [EBUSY]		  The directory	to be removed is the mount point for a
			  mounted file system.

       [EIO]		  An I/O error occurred	while deleting	the  directory
			  entry	or deallocating	the inode.

       [EINTEGRITY]	  Corrupted  data  was detected	while reading from the
			  file system.

       [EROFS]		  The directory	entry to be removed resides on a read-
			  only file system.

       [EFAULT]		  The path argument points outside the process's allo-
			  cated	address	space.

SEE ALSO
       mkdir(2), unlink(2)

HISTORY
       The rmdir() system call appeared	in 4.2BSD.

FreeBSD	13.2			March 30, 2020			      RMDIR(2)

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=rmdir&sektion=2&manpath=FreeBSD+14.0-RELEASE+and+Ports>

home | help