MAKEDEV is used to create system and device special files. As arguments it takes the names of known devices, like
sd0, or of special targets, like
all or
std, which create a collection of device special files, or
local, which invokes
MAKEDEV.local(8) with the
all argument.
The script is in
/dev/MAKEDEV. Devices are created in the current working directory; in normal use,
MAKEDEV should be invoked with
/dev as the current working directory.
Supported options are:
-f
Force permissions to be updated on existing devices. This works only if
MAKEDEV invokes
mknod(8); it is not compatible with the
-p,
-s, or
-t options.
-M
Create a memory file system, union mounted over the current directory, to contain the device special files. The memory file system is created using
mount_tmpfs(8) or
mount_mfs(8), in that order of preference.
If the
-M flag is specified more than once, then
MAKEDEV assumes that it is being invoked from
init(8) to populate a memory file system for
/dev. In this case,
MAKEDEV will also redirect its output to the system console.
-m mknod
Force the use of
mknod(8), and specify the name or path to the
mknod(8) program. [Usually, $TOOL_MKNOD or mknod.]
-p pax
Force the use of
pax(1), and specify the name or path to the
pax(1) program. [Usually, $TOOL_PAX or pax.]
-s
Generate an
mtree(8) specfile instead of creating devices.
-t mtree
Force the use of
mtree(8), and specify the name or path to the
mtree(8) program. [Usually, $TOOL_MTREE or mtree.]
MAKEDEV has several possible methods of creating device nodes:
•
By invoking the
mknod(8) command once for each device node. This is the traditional method, but it is slow because each device node is created using a new process.
The
-m option forces
MAKEDEV to use the
mknod(8) method.
•
By internally creating a specfile in a format usable by
mtree(8), and providing the specfile on standard input to a
pax(1) or
mtree(8) command, invoked with options that request it to create the device nodes as well as any necessary subdirectories. This is much faster than creating device nodes with
mknod(8), because it requires much fewer processes; however, it's not compatible with the
-f option.
The
-p or
-t options force
MAKEDEV to use the
pax(1) or
mtree(8) methods.
•
If the
-s option is specified, then
MAKEDEV will not create device nodes at all, but will output a specfile in a format usable by
mtree(8).
The
-m,
-p,
-s, and
-t flags are mutually exclusive. If none of these flags is specified, then
MAKEDEV will use
mtree(8),
pax(1), or
mknod(8), in that order of preference, depending on which commands appear to be available and usable. In normal use, it's expected that
mtree(8) will be available, so it will be chosen. If
MAKEDEV is invoked by
init(8), it's expected that
mtree(8) will not be available, but
pax(1) may be available.
The special targets supported on
NetBSD are:
all
Makes all known devices, including local devices. Tries to make the 'standard' number of each type.
init
A set of devices that is used for MFS /dev by init. May be equal to ``all''.
floppy
Devices to be put on install floppies
ramdisk
Devices to be put into INSTALL kernel ramdisks.
local
Configuration specific devices
wscons
Make wscons devices
Please note that any hash marks (“#”) in the following list of supported device targets must be replaced by digits when calling
MAKEDEV:
Tapes:
wt#
QIC-interfaced (e.g. not SCSI) 3M cartridge tape, see
wt(4)
tm#
UNIBUS TM11 and TE10 emulations (e.g. Emulex TC-11), see
vax/tm(4)
ut#
UNIBUS TU45 emulations (e.g. si 9700), see
vax/ut(4)
uu#
TU58 cassettes on DL11 controller, see
vax/uu(4)
Disks:
ccd#
Concatenated disk devices, see
ccd(4)
cd#
SCSI or ATAPI CD-ROM, see
cd(4)
cgd#
Cryptographic disk devices, see
cgd(4)
raid#
RAIDframe disk devices, see
raid(4)
wd#
``winchester'' disk drives (ST506,IDE,ESDI,RLL,...), see
wd(4)
ed#
IBM PS/2 ESDI disk devices, see
edc(4)
fss#
Files system snapshot devices, see
fss(4)
ld#
Logical disk devices (e.g., hardware RAID), see
ld(4)
md#
Memory pseudo-disk devices, see
md(4)
ofdisk#
OpenFirmware disk devices
ra#
MSCP disks (RA??, RD??)
rb#
730 IDC w/ RB80 and/or RB02
rx#
MSCP floppy disk (RX33/50/...)
up#
Other UNIBUS devices (e.g. on Emulex SC-21V controller), see
vax/up(4)
vnd#
``file'' pseudo-disks, see
vnd(4)
Pointing devices:
mouse
Mouse (provides events, for X11)
Terminals/Console ports:
tty[01]#
Standard serial ports, see
tty(4)
tty0#
SB1250 (``sbscn'') serial ports (sbmips), see
tty(4)
ttyE#
wscons - Workstation console (``wscons'') glass-tty emulators
ttyCZ?
Cyclades-Z multiport serial boards. Each ``unit'' makes 64 ports., see
cz(4)
ttyCY?
Cyclom-Y multiport serial boards. Each ``unit'' makes 32 ports., see
cy(4)
ttyC?
NS16550 (``com'') serial ports
ttyS#
SA1110 serial port (hpcarm)
ttyTX?
TX39 internal serial ports (hpcmips)
ttyB?
DEC 3000 ZS8530 (``scc'') serial ports (alpha), see
scc(4)
ttyA#
Mfc serial ports (amiga)
ttyB#
Msc serial ports (amiga)
ttyC#
Com style serial ports (DraCo, HyperCom) (amiga) On the DraCo, units 0 and 1 are the built-in ``modem'' and ``mouse'' ports, if configured.
ttyA0
8530 Channel A (formerly ser02) (atari)
ttyA1
8530 Channel B (formerly mdm02) (atari)
ttyB0
UART on first 68901 (formerly mdm01) (atari)
ttyM?
HP200/300 4 port serial mux interface (hp300)
ttya
``ttya'' system console (luna68k)
ttyb
Second system serial port (luna68k)
tty#
Onboard serial ports (mvme68k) On the mvme147 these are: ttyZ1, ttyZ2 and ttyZ3. On the mvme167, and '177: ttyC1, ttyC2 and ttyC3. Note that tty[CZ]0 is grabbed by the console device so is not created by default, see
tty(4)
dc#
PMAX 4 channel serial interface (kbd, mouse, modem, printer)
scc#
82530 serial interface (pmax), see
scc(4)
ttyZ#
Zilog 8530 (``zstty'') serial ports, see
zstty(4)
tty[abcd]
Built-in serial ports (sparc)
tty#
Z88530 serial controllers (sparc64), see
tty(4)
tty[a-j]
Built-in serial ports (sun2, sun3)
dh#
UNIBUS DH11 and emulations (e.g. Able DMAX, Emulex CS-11) (vax), see
vax/dh(4)
xencons
Xen virtual console
Terminal multiplexors:
dc#
4 channel serial interface (keyboard, mouse, modem, printer)
dh#
UNIBUS DH11 and emulations (e.g. Able DMAX, Emulex CS-11), see
vax/dh(4)
scc#
82530 serial interface, see
scc(4)
Call units:
dn#
UNIBUS DN11 and emulations (e.g. Able Quadracall), see
vax/dn(4)
Pseudo terminals:
ptm
Pty multiplexor device, and pts directory, see
ptm(4)
pty#
Set of 16 master and slave pseudo terminals, see
pty(4)
opty
First 16 ptys, to save inodes on install media
ipty
First 2 ptys, for install media use only
Printers:
arcpp#
Archimedes parallel port
par#
Amiga motherboard parallel port
USB devices:
usb#
USB control devices, see
usb(4)
uhid#
USB generic HID devices, see
uhid(4)
urio#
USB Diamond Rio 500 devices, see
urio(4)
ttyHS#
USB Option N.V. modems
ttyY#
USB serial adapters
ISDN devices:
isdn
Communication between userland isdnd and kernel, see
isdn(4)
isdnteld#
Telephony dialout device
Video devices:
etvme
Tseng et-compatible cards on VME (atari)
ik#
UNIBUS interface to Ikonas frame buffer, see
vax/ik(4)
leo
Circad Leonardo VME-bus true color (atari)
ps#
UNIBUS interface to Picture System 2, see
vax/ps(4)
qv#
QVSS (MicroVAX) display
IEEE1394 bus devices:
fw#
IEEE1394 bus generic node access devices
fwmem#
IEEE1394 bus physical memory of the remote node access devices
Special purpose devices:
ad#
UNIBUS interface to Data Translation A/D converter, see
vax/ad(4)
altq
ALTQ control interface
amr#
AMI MegaRaid control device, see
amr(4)
bell#
OPM bell device (x68k)
bktr
Brooktree 848/849/878/879 based TV cards, see
bktr(4)
bthub
Bluetooth Device Hub control interface, see
bthub(4)
cfs#
Coda file system device
ch#
SCSI media changer, see
ch(4)
dpt#
DPT/Adaptec EATA RAID management interface, see
dpt(4)
dpti#
DPT/Adaptec I2O RAID management interface, see
dpti(4)
drm#
Direct Rendering Manager interface, see
drm(4)
fb#
PMAX generic framebuffer pseudo-device
hdaudio#
High Definition audio control device, see
hdaudio(4)
icp
ICP-Vortex/Intel RAID control interface, see
icp(4)
iop#
I2O IOP control interface, see
iop(4)
lockstat
Kernel locking statistics
mlx#
Mylex DAC960 control interface, see
mlx(4)
mly#
Mylex AcceleRAID/eXtremeRAID control interface, see
mly(4)
np#
UNIBUS Ethernet co-processor interface, for downloading., see
vax/np(4)
openfirm
OpenFirmware accessor
pad#
Pseudo-audio device driver, see
pad(4)
pci#
PCI bus access devices, see
pci(4)
putter
Pass-to-Userspace Transporter
px#
PixelStamp Xserver access, see
px(4)
random
Random number generator, see
rnd(4)
satlink#
PlanetConnect satellite receiver driver
ses#
SES/SAF-TE SCSI Devices, see
ses(4)
sram
Battery backuped memory (x68k)
stic#
PixelStamp interface chip
tap#
Virtual Ethernet device, see
tap(4)
tun#
Network tunnel driver, see
tun(4)
twa
3ware Apache control interface, see
twa(4)
twe
3ware Escalade control interface, see
twe(4)
uk#
Unknown SCSI device, see
uk(4)
view#
Generic interface to graphic displays (Amiga)
vmegen#
Generic VME access
xenevt
Xen event interface