MKNOD(8) - System Manager's Manual

MKNOD(8) - System Manager’s Manual #

MKNOD(8) - System Manager’s Manual

NAME #

mknod - make device special files

SYNOPSIS #

mknod [-m mode] name b|c major minor
mknod [-m mode] name p

DESCRIPTION #

The 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:

-m mode

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:

name

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.

b | c | p

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 is
**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
**p**.

major

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.

minor

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.

SEE ALSO #

chmod(1), mkfifo(1), mkfifo(2), mknod(2), MAKEDEV(8)

STANDARDS #

As an extension, mknod can also take multiple lists of parameters in one go. Note that -m 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.

HISTORY #

A mknod command appeared in Version4 AT&T UNIX.

OpenBSD 7.5 - October 6, 2016