230 lines
5.9 KiB
Groff
230 lines
5.9 KiB
Groff
|
.\" $NetBSD: mknod.8,v 1.28 2004/06/17 21:30:14 dsl Exp $
|
||
|
.\"
|
||
|
.\" Copyright (c) 1980, 1991, 1993
|
||
|
.\" The Regents of the University of California. All rights reserved.
|
||
|
.\"
|
||
|
.\" Redistribution and use in source and binary forms, with or without
|
||
|
.\" modification, are permitted provided that the following conditions
|
||
|
.\" are met:
|
||
|
.\" 1. Redistributions of source code must retain the above copyright
|
||
|
.\" notice, this list of conditions and the following disclaimer.
|
||
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||
|
.\" notice, this list of conditions and the following disclaimer in the
|
||
|
.\" documentation and/or other materials provided with the distribution.
|
||
|
.\" 3. Neither the name of the University nor the names of its contributors
|
||
|
.\" may be used to endorse or promote products derived from this software
|
||
|
.\" without specific prior written permission.
|
||
|
.\"
|
||
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||
|
.\" SUCH DAMAGE.
|
||
|
.\"
|
||
|
.\" @(#)mknod.8 8.2 (Berkeley) 12/11/93
|
||
|
.\"
|
||
|
.Dd June 17, 2004
|
||
|
.Dt MKNOD 8
|
||
|
.Os
|
||
|
.Sh NAME
|
||
|
.Nm mknod
|
||
|
.Nd make device special file
|
||
|
.Sh SYNOPSIS
|
||
|
.Nm
|
||
|
.Op Fl rR
|
||
|
.Op Fl F Ar fmt
|
||
|
.Op Fl g Ar gid
|
||
|
.Op Fl m Ar mode
|
||
|
.Op Fl u Ar uid
|
||
|
.Ar name
|
||
|
.Op Cm c | Cm b
|
||
|
.Op Ar driver | Ar major
|
||
|
.Ar minor
|
||
|
.Nm
|
||
|
.Op Fl rR
|
||
|
.Op Fl F Ar fmt
|
||
|
.Op Fl g Ar gid
|
||
|
.Op Fl m Ar mode
|
||
|
.Op Fl u Ar uid
|
||
|
.Ar name
|
||
|
.Op Cm c | Cm b
|
||
|
.Ar major unit subunit
|
||
|
.Nm
|
||
|
.Op Fl rR
|
||
|
.Op Fl g Ar gid
|
||
|
.Op Fl m Ar mode
|
||
|
.Op Fl u Ar uid
|
||
|
.Ar name
|
||
|
.Op Cm c | Cm b
|
||
|
.Ar number
|
||
|
.Nm
|
||
|
.Op Fl rR
|
||
|
.Op Fl g Ar gid
|
||
|
.Op Fl m Ar mode
|
||
|
.Op Fl u Ar uid
|
||
|
.Ar name
|
||
|
.Cm p
|
||
|
.Nm
|
||
|
.Fl l
|
||
|
.Sh DESCRIPTION
|
||
|
The
|
||
|
.Nm
|
||
|
command creates device special files, or fifos.
|
||
|
Normally the shell script
|
||
|
.Pa /dev/MAKEDEV
|
||
|
is used to create special files for commonly known devices; it executes
|
||
|
.Nm
|
||
|
with the appropriate arguments and can make all the files required for the
|
||
|
device.
|
||
|
.Pp
|
||
|
To make nodes manually, the arguments are:
|
||
|
.Pp
|
||
|
.Bl -tag -width xmxmode
|
||
|
.It Fl r
|
||
|
Replace an existing file if its type is incorrect.
|
||
|
.It Fl R
|
||
|
Replace an existing file if its type is incorrect.
|
||
|
Correct the mode, user and group.
|
||
|
.It Fl F Ar fmt
|
||
|
Create device nodes that may be used by an operating system which
|
||
|
uses device numbers packed in a different format than
|
||
|
.Nx
|
||
|
uses.
|
||
|
This is necessary when
|
||
|
.Nx
|
||
|
is used as an
|
||
|
.Tn NFS
|
||
|
server for netbooted computers running other operating systems.
|
||
|
.Pp
|
||
|
The following values for the
|
||
|
.Ar fmt
|
||
|
are recognized:
|
||
|
.Sy native ,
|
||
|
.Sy 386bsd ,
|
||
|
.Sy 4bsd ,
|
||
|
.Sy bsdos ,
|
||
|
.Sy freebsd ,
|
||
|
.Sy hpux ,
|
||
|
.Sy isc ,
|
||
|
.Sy linux ,
|
||
|
.Sy netbsd ,
|
||
|
.Sy osf1 ,
|
||
|
.Sy sco ,
|
||
|
.Sy solaris ,
|
||
|
.Sy sunos ,
|
||
|
.Sy svr3 ,
|
||
|
.Sy svr4 ,
|
||
|
and
|
||
|
.Sy ultrix .
|
||
|
.It Fl g Ar gid
|
||
|
Specify the group for the device node.
|
||
|
The
|
||
|
.Ar 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
|
||
|
.Cm #
|
||
|
to stop it being treated as a name.
|
||
|
.It Fl m Ar mode
|
||
|
Specify the mode for the device node.
|
||
|
The mode may be absolute or symbolic, see
|
||
|
.Xr chmod 1 .
|
||
|
.It Fl u Ar uid
|
||
|
Specify the user for the device node.
|
||
|
The
|
||
|
.Ar 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
|
||
|
.Cm #
|
||
|
to stop it being treated as a name.
|
||
|
.It Ar name
|
||
|
Device name, for example
|
||
|
.Dq sd
|
||
|
for a SCSI disk on an HP300 or a
|
||
|
.Dq pty
|
||
|
for pseudo-devices.
|
||
|
.It Cm b | Cm c | Cm 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
|
||
|
.Cm b .
|
||
|
All other devices are character type devices, such as terminal
|
||
|
and pseudo devices, and are type
|
||
|
.Cm c .
|
||
|
Specifying
|
||
|
.Cm p
|
||
|
creates fifo files.
|
||
|
.It Ar driver | Ar 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
|
||
|
.Nm
|
||
|
.Fl l ,
|
||
|
check the file
|
||
|
.Pa /dev/MAKEDEV
|
||
|
to see if the device is known, or check
|
||
|
the system dependent device configuration file:
|
||
|
.Bd -filled -offset indent
|
||
|
.Dq Pa /usr/src/sys/arch/\*[Lt]arch\*[Gt]/\*[Lt]arch\*[Gt]/conf.c
|
||
|
.Ed
|
||
|
.Pp
|
||
|
.Po
|
||
|
e.g.
|
||
|
.Pa /usr/src/sys/arch/vax/vax/conf.c
|
||
|
.Pc .
|
||
|
.It Ar 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.
|
||
|
.It Ar unit No and Ar 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
|
||
|
.Ar bsdos
|
||
|
format, for compatibility with the
|
||
|
.Bsx
|
||
|
.Nm ) .
|
||
|
.It Ar number
|
||
|
A single opaque device number.
|
||
|
Useful for netbooted computers which require device numbers packed
|
||
|
in a format that isn't supported by
|
||
|
.Fl F .
|
||
|
.It Fl l
|
||
|
List the device drivers configured into the current kernel together with their
|
||
|
block and character major numbers.
|
||
|
.El
|
||
|
.Sh SEE ALSO
|
||
|
.Xr chmod 1 ,
|
||
|
.Xr mkfifo 1 ,
|
||
|
.Xr mkfifo 2 ,
|
||
|
.Xr mknod 2 ,
|
||
|
.Xr MAKEDEV 8
|
||
|
.Sh HISTORY
|
||
|
A
|
||
|
.Nm
|
||
|
command appeared in
|
||
|
.At v6 .
|
||
|
The
|
||
|
.Fl F
|
||
|
option appeared in
|
||
|
.Nx 1.4 .
|
||
|
The
|
||
|
.Fl g , l , m , r , R ,
|
||
|
and
|
||
|
.Fl u
|
||
|
options, and the ability to specify a driver by name appeared in
|
||
|
.Nx 2.0 .
|