mknod —
make device special files
mknod |
[ -m
mode ]
name
b|c
major minor |
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.
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
-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.
A
mknod command appeared in
Version 4 AT&T UNIX.