1.\" Copyright (c) 1980, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by the University of 15.\" California, Berkeley and its contributors. 16.\" 4. Neither the name of the University nor the names of its contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.\" @(#)mknod.2 8.1 (Berkeley) 6/4/93 33.\" $FreeBSD: src/lib/libc/sys/mknod.2,v 1.9.2.3 2001/12/14 18:34:01 ru Exp $ 34.\" $DragonFly: src/lib/libc/sys/mknod.2,v 1.2 2003/06/17 04:26:47 dillon Exp $ 35.\" 36.Dd August 9, 2009 37.Dt MKNOD 2 38.Os 39.Sh NAME 40.Nm mknod 41.Nd make a special file node 42.Sh LIBRARY 43.Lb libc 44.Sh SYNOPSIS 45.In sys/stat.h 46.Ft int 47.Fn mknod "const char *path" "mode_t mode" "dev_t dev" 48.Sh DESCRIPTION 49The filesystem node 50.Fa path 51is created with the file type and access permissions specified in 52.Fa mode . 53The access permissions are modified by the process's umask value. 54.Pp 55If 56.Fa mode 57indicates a block or character special file, 58.Fa dev 59is a configuration dependent specification denoting a particular device 60on the system. 61Otherwise, 62.Fa dev 63is ignored. 64.Pp 65.Fn Mknod 66requires super-user privileges. 67.Sh RETURN VALUES 68.Rv -std mknod 69.Sh ERRORS 70.Fn Mknod 71will fail and the file will be not created if: 72.Bl -tag -width Er 73.It Bq Er ENOTDIR 74A component of the path prefix is not a directory. 75.It Bq Er ENAMETOOLONG 76A component of a pathname exceeded 255 characters, 77or an entire path name exceeded 1023 characters. 78.It Bq Er ENOENT 79A component of the path prefix does not exist. 80.It Bq Er EACCES 81Search permission is denied for a component of the path prefix. 82.It Bq Er ELOOP 83Too many symbolic links were encountered in translating the pathname. 84.It Bq Er EPERM 85The process's effective user ID is not super-user. 86.It Bq Er EIO 87An I/O error occurred while making the directory entry or allocating the inode. 88.It Bq Er ENOSPC 89The directory in which the entry for the new node is being placed 90cannot be extended because there is no space left on the file 91system containing the directory. 92.It Bq Er ENOSPC 93There are no free inodes on the file system on which the 94node is being created. 95.It Bq Er EDQUOT 96The directory in which the entry for the new node 97is being placed cannot be extended because the 98user's quota of disk blocks on the file system 99containing the directory has been exhausted. 100.It Bq Er EDQUOT 101The user's quota of inodes on the file system on 102which the node is being created has been exhausted. 103.It Bq Er EROFS 104The named file resides on a read-only file system. 105.It Bq Er EEXIST 106The named file exists. 107.It Bq Er EFAULT 108.Fa Path 109points outside the process's allocated address space. 110.It Bq Er EINVAL 111Creating anything else than a block or character special 112file (or a 113.Em whiteout ) 114is not supported. 115.El 116.Sh SEE ALSO 117.Xr chmod 2 , 118.Xr mkfifo 2 , 119.Xr stat 2 , 120.Xr umask 2 121.Sh HISTORY 122A 123.Fn mknod 124function call appeared in 125.At v6 . 126