Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

OSX 10.6.2 - man page for mknod (osx section 2)

MKNOD(2)						      BSD System Calls Manual							  MKNOD(2)

mknod -- make a special file node
#include <sys/stat.h> int mknod(const char *path, mode_t mode, dev_t dev);
The device special file path is created with the major and minor device numbers extracted from mode. The access permissions of path are con- strained by the umask(2) of the parent process. If mode indicates a block or character special file, dev is a configuration-dependent specification of a character or block I/O device and the superblock of the device. If mode does not indicate a block special or character special device, dev is ignored. Mknod() requires super-user privileges.
Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error.
Mknod() will fail and the file will be not created if: [EACCES] Search permission is denied for a component of the path prefix. [EACCES] Write permission is denied for the parent directory. [EDQUOT] The directory in which the entry for the new node is being placed cannot be extended; the user's quota of disk blocks on the file system containing the directory has been exhausted. [EDQUOT] The user's quota of inodes for the file system on which the node is being created has been exhausted. [EEXIST] The named file exists. [EFAULT] Path points outside the process's allocated address space. [EINVAL] One or more of the arguments is invalid. [EIO] An I/O error occurs while making the directory entry or allocating the inode. [ELOOP] Too many symbolic links were encountered in translating the pathname. This is taken to be indicative of a looping sym- bolic link. [ENAMETOOLONG] A component of a pathname exceeds {NAME_MAX} characters or an entire path name exceeds {PATH_MAX} characters. [ENOENT] A component of the path prefix does not exist or path is an empty string. [ENOSPC] The directory in which the entry for the new node is being placed cannot be extended, because there is no space left on the file system containing the directory. [ENOSPC] There are no free inodes on the file system on which the node is being created. [ENOTDIR] A component of the path prefix is not a directory. [EPERM] The process's effective user ID is not super-user. [EROFS] The created node would reside on a read-only file system.
#include <unistd.h> The include file has changed.
chmod(2), stat(2), umask(2), compat(5)
A mknod() function call appeared in Version 6 AT&T UNIX. 4th Berkeley Distribution June 4, 1993 4th Berkeley Distribution
All times are GMT -4. The time now is 01:29 PM.

Unix & Linux Forums Content Copyright 1993-2018. All Rights Reserved.