NAME
mknod —
make device special file
SYNOPSIS
mknod |
[-rR]
[-F fmt]
[-g gid]
[-m mode]
[-u uid]
name [c |
b] [driver
| major] minor |
mknod |
[-rR]
[-F fmt]
[-g gid]
[-m mode]
[-u uid]
name [c |
b] major unit subunit |
mknod |
[-rR]
[-g gid]
[-m mode]
[-u uid]
name [c |
b] number |
mknod |
[-rR]
[-g gid]
[-m mode]
[-u uid]
name p |
DESCRIPTION
The
mknod command creates device special files, or fifos.
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.
To make nodes manually, the arguments are:
-
-
- -r
- Replace an existing file if its type is incorrect.
-
-
- -R
- Replace an existing file if its type is incorrect. Correct
the mode, user and group.
-
-
- -F
fmt
- Create device nodes that may be used by an operating system
which uses device numbers packed in a different format than
NetBSD uses. This is necessary when
NetBSD is used as an NFS server for netbooted
computers running other operating systems.
The following values for the fmt are recognized:
native, 386bsd,
4bsd, bsdos,
freebsd, hpux, isc,
linux, netbsd, osf1,
sco, solaris, sunos,
svr3, svr4, and
ultrix.
-
-
- -g
gid
- Specify the group for the device node. The
gid operand may be a numeric group ID or a group
name. If a group name is also a numeric group ID, the operand is used as a
group name. Precede a numeric group ID with a # to stop
it being treated as a name.
-
-
- -m
mode
- Specify the mode for the device node. The mode may be
absolute or symbolic, see
chmod(1).
-
-
- -u
uid
- Specify the user for the device node. The
uid operand may be 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. Precede a numeric user ID with a # to stop it
being treated as a name.
-
-
- name
- Device name, for example “sd” for a SCSI disk
on an HP300 or a “pty” for pseudo-devices.
-
-
- b |
c | p
- 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.
Specifying p creates fifo files.
-
-
- driver
| major
- The major device number is an integer number which tells
the kernel which device driver entry point to use. If the device driver is
configured into the current kernel it may be specified by driver name or
major number. To find out which major device number to use for a
particular device, use mknod -l, check
the file /dev/MAKEDEV to see if the device is known, or
check the system dependent device configuration file:
“/usr/src/sys/arch/<arch>/<arch>/conf.c”
(e.g. /usr/src/sys/arch/vax/vax/conf.c).
-
-
- minor
- The minor device number tells the kernel which one of
several similar devices the node corresponds to; for example, it may be a
specific serial port or pty.
-
-
- unit
and subunit
- The unit and subunit numbers select a subset of a device;
for example, the unit may specify a particular SCSI disk, and the subunit
a partition on that disk. (Currently this form of specification is only
supported by the bsdos format, for compatibility
with the BSD/OS mknod).
-
-
- number
- A single opaque device number. Useful for netbooted
computers which require device numbers packed in a format that isn't
supported by -F.
-
-
- -l
- List the device drivers configured into the current kernel
together with their block and character major numbers.
SEE ALSO
chmod(1),
mkfifo(1),
mkfifo(2),
mknod(2),
MAKEDEV(8)
HISTORY
A
mknod command appeared in
Version 4
AT&T UNIX. The
-F option appeared in
NetBSD 1.4. The
-g,
-l,
-m,
-r,
-R, and
-u options, and the ability to
specify a driver by name appeared in
NetBSD 2.0.