diff options
Diffstat (limited to 'man2/mkdir.2')
-rw-r--r-- | man2/mkdir.2 | 127 |
1 files changed, 127 insertions, 0 deletions
diff --git a/man2/mkdir.2 b/man2/mkdir.2 new file mode 100644 index 000000000..d02811f3e --- /dev/null +++ b/man2/mkdir.2 @@ -0,0 +1,127 @@ +.\" Hey Emacs! This file is -*- nroff -*- source. +.\" +.\" This manpage is Copyright (C) 1992 Drew Eckhardt; +.\" 1993 Michael Haardt +.\" 1993,1994 Ian Jackson. +.\" You may distribute it under the terms of the GNU General +.\" Public Licence. It comes with NO WARRANTY. +.\" +.TH MKDIR 2 2003-12-09 "Linux 2.4" "Linux Programmer's Manual" +.SH NAME +mkdir \- create a directory +.SH SYNOPSIS +.nf +.B #include <sys/stat.h> +.B #include <sys/types.h> +.\" .B #include <unistd.h> +.sp +.BI "int mkdir(const char *" pathname ", mode_t " mode ); +.fi +.SH DESCRIPTION +.B mkdir +attempts to create a directory named +.IR pathname . + +The parameter +.I mode +specifies the permissions to use. It is modified by the process's +.I umask +in the usual way: the permissions of the created directory are +.RI ( mode " & ~" umask " & 0777)." +Other mode bits of the created directory depend on the operating system. +For Linux, see below. + +The newly created directory will be owned by the effective user ID of the +process. If the directory containing the file has the set group ID +bit set, or if the filesystem is mounted with BSD group semantics, the +new directory will inherit the group ownership from its parent; +otherwise it will be owned by the effective group ID of the process. + +If the parent directory has the set group ID bit set then so will the +newly created directory. + +.SH "RETURN VALUE" +.BR mkdir +returns zero on success, or \-1 if an error occurred (in which case, +.I errno +is set appropriately). +.SH ERRORS +.TP +.B EACCES +The parent directory does not allow write permission to the process, +or one of the directories in +.IR pathname +did not allow search permission. +(See also +.BR path_resolution (2).) +.TP +.B EEXIST +.I pathname +already exists (not necessarily as a directory). +This includes the case where +.I pathname +is a symbolic link, dangling or not. +.TP +.B EFAULT +.IR pathname " points outside your accessible address space." +.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 ENOSPC +The device containing +.I pathname +has no room for the new directory. +.TP +.B ENOSPC +The new directory cannot be created because the user's disk quota is +exhausted. +.TP +.B ENOTDIR +A component used as a directory in +.I pathname +is not, in fact, a directory. +.TP +.B EPERM +The filesystem containing +.IR pathname +does not support the creation of directories. +.TP +.B EROFS +.I pathname +refers to a file on a read-only filesystem. +.SH "CONFORMING TO" +SVr4, POSIX, BSD, SYSV, X/OPEN. SVr4 documents additional EIO, EMULTIHOP +and ENOLINK error conditions; POSIX.1 omits ELOOP. +.SH NOTES +Under Linux apart from the permission bits, only the S_ISVTX mode bit +is honored. That is, under Linux the created directory actually gets mode +.RI ( mode " & ~" umask " & 01777)." +See also +.BR stat (2). +.PP +There are many infelicities in the protocol underlying NFS. Some +of these affect +.BR mkdir . +.SH "SEE ALSO" +.BR mkdir (1), +.BR chmod (2), +.BR mknod (2), +.BR mount (2), +.BR path_resolution (2), +.BR rmdir (2), +.BR stat (2), +.BR umask (2), +.BR unlink (2) |