mknod
—
build special file
mknod |
name [b |
c ] major minor
[owner:group] |
The mknod
utility is deprecated on
modern FreeBSD systems.
The mknod
utility creates device special
files. To make nodes manually, the arguments are:
- name
- Device name, for example /dev/da0 for a SCSI disk
or /dev/pts/0 for pseudo-terminals.
b
|
c
- Type of device. 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
.
- major
- The major device number is an integer number which tells the kernel which
device driver entry point to use.
- minor
- The minor device number tells the kernel which subunit the node
corresponds to on the device; for example, a subunit may be a file system
partition or a tty line.
- owner:group
- The owner group operand pair
is optional, however, if one is specified, they both must be specified.
The owner may be either a numeric user ID or a user
name. If a user name is also a numeric user ID, the operand is used as a
user name. The group may be either a numeric group
ID or a group name. Similar to the user name, if a group name is also a
numeric group ID, the operand is used as a group name.
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.
The mknod
utility can be used to recreate
deleted device nodes under a
devfs(5)
mount point by invoking it with only a filename as an argument. Example:
mknod /dev/cd0
where /dev/cd0 is the name of the deleted
device node.
The
chown(8)-like
functionality is specific to FreeBSD.
As of FreeBSD 4.0, block devices were
deprecated in favour of character devices. As of FreeBSD
5.0, device nodes are managed by the device file system
devfs(5),
making the mknod
utility superfluous. As of
FreeBSD 6.0 device nodes may be created in regular
file systems but such nodes cannot be used to access devices.
A mknod
utility appeared in
Version 4 AT&T UNIX.