make device special files
mknod command creates device special
files. Normally the shell script /dev/MAKEDEV is
used to create special files for commonly known devices; it executes
mknod with the appropriate arguments and can make
all the files required for the device.
The options are as follows:
- Set the file permission bits of newly created device special files to
mode. The mode argument can be in any of the formats
specified to the chmod(1) utility. If a symbolic mode is specified, the operators
+’ and ‘
-’ are interpreted relative to an initial mode of “a=rw”.
To make nodes manually, the arguments are:
- Device or FIFO name. For example “sd” for a SCSI disk or a “pty” for pseudo-devices. FIFOs may be named arbitrarily by the user.
- Type of device or FIFO. If the device is a block type device such as a
tape or disk drive which needs both cooked and raw special files, the type
b. All other devices are character type devices, such as terminal and pseudo devices, and are type
c. A FIFO (also known as a named pipe) is type
- The major device number is an integer number which tells the kernel which device driver entry point to use. To learn what major device number to use for a particular device, check the file /dev/MAKEDEV to see if the device is known.
- The minor device number tells the kernel which subunit the node
corresponds to on the device; for example, a subunit may be a filesystem
partition or a tty line.
Major and minor device numbers can be given in any format acceptable to strtoul(3), so that a leading “0x” indicates a hexadecimal number, and a leading “0” will cause the number to be interpreted as octal.
chmod(1), mkfifo(1), mkfifo(2), mknod(2), MAKEDEV(8)
As an extension,
mknod can also take
multiple lists of parameters in one go. Note that
is not reset from one list to the next so, for example, in
mknod -m 700 name b 12 5 name2 b 12 6
both name and name2 will be mode 700.
mknod command appeared in
Version 4 AT&T UNIX.