summaryrefslogtreecommitdiffstats
path: root/sbin/mknod/mknod.8
blob: 54b544153c9794b46815c831cb160451ef6d1502 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
.\" 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.
.\" 4. 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
.\" $FreeBSD$
.\"
.Dd December 15, 2004
.Dt MKNOD 8
.Os
.Sh NAME
.Nm mknod
.Nd build special file
.Sh SYNOPSIS
.Nm
.Ar name
.Op Cm b | c
.Ar major minor
.Op Ar owner : Ns Ar group
.Sh DESCRIPTION
.Bf -symbolic
The
.Nm
utility is deprecated on modern
.Fx
systems.
.Ef
.Pp
The
.Nm
utility creates device special files.
To make nodes manually, the four required arguments are:
.Pp
.Bl -tag -width indent
.It Ar name
Device name, for example
.Dq sd
for a SCSI disk on an HP300 or a
.Dq pty
for pseudo-terminals.
.It Cm 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
.Cm b .
All other devices are character type devices, such as terminal
and pseudo devices, and are type
.Cm c .
.It Ar 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
.Pa /usr/src/sys/conf/majors .
.It Ar 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.
.It Ar owner : Ns Ar group
The
.Ar owner
.Ar group
operand pair is optional, however, if one is specified, they both must be
specified.
The
.Ar 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
.Ar 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.
.El
.Pp
Major and minor device numbers can be given in any format acceptable to
.Xr strtoul 3 ,
so that a leading
.Ql 0x
indicates a hexadecimal number, and a leading
.Ql 0
will cause the number to be interpreted as octal.
.Pp
The
.Nm
utility can be used to recreate deleted device nodes under a
.Xr devfs 5
mount point by invoking it using dummy arguments.
Example:
.Pp
.Dl "mknod cd0 c 0 0"
.Pp
where
.Dq Li cd0
is the name of the deleted device node.
.Sh COMPATIBILITY
The
.Xr chown 8 Ns - Ns
like functionality is specific to
.Fx .
.Pp
As of
.Fx 4.0 ,
block devices were deprecated in favour of character
devices.
As of
.Fx 5.0 ,
device nodes are managed by the device file system
.Xr devfs 5 ,
making the
.Nm
utility superfluous.
As of
.Fx 6.0
device nodes may be created in regular file systems but such
nodes cannot be used to access devices.
.Sh SEE ALSO
.Xr mkfifo 1 ,
.Xr mknod 2 ,
.Xr devfs 5 ,
.Xr chown 8
.Sh HISTORY
A
.Nm
utility appeared in
.At v6 .
OpenPOWER on IntegriCloud