MAKEDEV —
create system and device special files
  
    | MAKEDEV | [ -fMsu] [-mmknod] [-ppax] [-tmtree] {special |
      device} [...] | 
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
      MAKEDEVinvokes
      mknod(8); it is not
      compatible with the-p,-s, or-toptions.
- -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 -Mflag is specified more than
        once, thenMAKEDEVassumes that it is being
        invoked from init(8) to
        populate a memory file system for /dev. In this
        case,MAKEDEVwill also redirect its output to
        the system console.
 
- -mmknod
- Force the use of mknod(8),
      and specify the name or path to the
      mknod(8) program. [Usually,
      $TOOL_MKNOD or mknod.]
- -ppax
- 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.
- -tmtree
- Force the use of mtree(8),
      and specify the name or path to the
      mtree(8) program. [Usually,
      $TOOL_MTREE or mtree.]
- -u
- Don't re-create devices that already exist.
MAKEDEV has several possible methods of
    creating device nodes:
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.
- std
- Standard devices
- local
- Configuration specific devices
- lua
- Lua device
- wscons
- Make wscons devices
- usbs
- Make USB devices
Please note that any hash marks (“#”) in the
    following list of supported device targets must be replaced by digits when
    calling MAKEDEV:
  - Tapes:
- 
    
      - st#
- SCSI tapes, see st(4)
- wt#
- QIC-interfaced (e.g. not SCSI) 3M cartridge tape, see
          wt(4)
- ht#
- MASSBUS TM03 and TU??, see
          vax/ht(4)
- mt#
- MSCP tapes (e.g. TU81, TK50), see
          vax/mt(4)
- tm#
- UNIBUS TM11 and TE10 emulations (e.g. Emulex TC-11), see
          vax/tm(4)
- ts#
- UNIBUS TS11, see
          vax/ts(4)
- ut#
- UNIBUS TU45 emulations (e.g. si 9700), see
          vax/ut(4)
- uu#
- TU58 cassettes on DL11 controller, see
          vax/uu(4)
 
- Disks:
- 
    
      - dk#
- Wedge disk slices, see
        dk(4)
- 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)
- sd#
- SCSI disks, see sd(4)
- wd#
- ``winchester'' disk drives (ST506,IDE,ESDI,RLL,...), see
          wd(4)
- bmd#
- Nereid bank memory disks, see
          x68k/bmd(4)
- ed#
- IBM PS/2 ESDI disk devices, see
          edc(4)
- fd#
- ``floppy'' disk drives (3 1/2", 5 1/4"), see
          amiga/fdc(4),
          sparc64/fdc(4),
          x86/fdc(4)
- fss#
- Files system snapshot devices, see
          fss(4)
- gdrom#
- Dreamcast ``gigadisc'' CD-ROM drive, see
          dreamcast/gdrom(4)
- hk#
- UNIBUS RK06 and RK07, see
          vax/hk(4)
- hp#
- MASSBUS RM??, see
          vax/hp(4)
- ld#
- Logical disk devices (e.g., hardware RAID), see
          ld(4)
- mcd#
- Mitsumi CD-ROM, see
        mcd(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
- rd#
- HDC9224 RD disks on VS2000, see
          hp300/rd(4)
- rl#
- UNIBUS RL02, see
          vax/rl(4)
- 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)
- xbd#
- Xen virtual disks, see
          xbd(4)
- xd#
- Xylogic 753/7053 disks, see
          sparc/xd(4)
- xy#
- Xylogic 450/451 disks, see
          sparc/xy(4)
 
- Pointing devices:
- 
    
      - wsmouse#
- wscons mouse events, see
          wsmouse(4)
- lms#
- Logitech bus mouse, see
          i386/lms(4)
- mms#
- Microsoft bus mouse, see
          dreamcast/mms(4),
          i386/mms(4)
- qms#
- ``quadrature mouse'', see
          acorn32/qms(4)
- pms#
- PS/2 mouse
- mouse
- Mouse (provides events, for X11)
 
- Keyboard devices:
- 
    
      - wskbd#
- wscons keyboard events, see
          wskbd(4)
- kbd
- Raw keyboard (provides events, for X11), see
          sparc/kbd(4),
          sun2/kbd(4),
          sun3/kbd(4)
- kbdctl
- Keyboard control
 
- 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)
- ttye#
- ITE bitmapped consoles, see
          amiga/ite(4)
- ttyv0
- pccons
- ttyC?
- NS16550 (``com'') serial ports
- ttyS#
- SA1110 serial port (hpcarm)
- ttyTX?
- TX39 internal serial ports (hpcmips)
- ttyB?
- DEC 3000 ZS8530 (``scc'') serial ports (alpha)
- 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)
- ixpcom
- IXP12x0 COM ports
- epcom
- EP93xx COM ports
- plcom
- ARM PL01[01] serial ports
- wmcom
- EPOC Windermere COM ports
- 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)
- ttyZ#
- Zilog 8530 (``zstty'') serial ports, see
          zstty(4)
- tty[abcd]
- Built-in serial ports (sparc)
- tty#
- Z88530 serial controllers (sparc64), see
          tty(4)
- ttyh#
- SAB82532 serial controllers (sparc64), see
          sparc64/sab(4)
- tty[a-j]
- Built-in serial ports (sun2, sun3)
- ttyC?
- pccons (arc)
- dz#
- UNIBUS DZ11 and DZ32 (vax), see
          emips/dz(4),
          vax/dz(4)
- dh#
- UNIBUS DH11 and emulations (e.g. Able DMAX, Emulex CS-11) (vax), see
          vax/dh(4)
- dmf#
- UNIBUS DMF32 (vax), see
          vax/dmf(4)
- dhu#
- UNIBUS DHU11 (vax), see
          vax/dhu(4)
- dmz#
- UNIBUS DMZ32 (vax), see
          vax/dmz(4)
- dl#
- UNIBUS DL11 (vax), see
          vax/dl(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)
- dhu#
- UNIBUS DHU11, see
          vax/dhu(4)
- dl#
- UNIBUS DL11, see
          vax/dl(4)
- dmf#
- UNIBUS DMF32, see
          vax/dmf(4)
- dmz#
- UNIBUS DMZ32, see
          vax/dmz(4)
- dz#
- UNIBUS DZ11 and DZ32, see
          emips/dz(4),
          vax/dz(4)
- scc#
- 82530 serial interface
 
- 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
- lpt#
- Stock lp, see lpt(4),
          acorn32/lpt(4),
          mvme68k/lpt(4),
          x86/lpt(4)
- lpa#
- Interruptless lp
- par#
- Amiga motherboard parallel port
- cpi#
- Macintosh Nubus CSI parallel printer card, see
          mac68k/cpi(4)
 
- USB devices:
- 
    
      - usb#
- USB control devices, see
          usb(4)
- uhid#
- USB generic HID devices, see
          uhid(4)
- ulpt#
- USB printer devices, see
          ulpt(4)
- ugen#
- USB generic devices, see
          ugen(4)
- urio#
- USB Diamond Rio 500 devices, see
          urio(4)
- uscanner#
- USB scanners, see
          uscanner(4)
- ttyHS#
- USB Option N.V. modems
- ttyU#
- USB modems, see
        ucom(4)
- ttyY#
- USB serial adapters
 
- Video devices:
- 
    
      - bwtwo#
- Monochromatic frame buffer, see
          sparc/bwtwo(4),
          sun2/bwtwo(4),
          sun3/bwtwo(4)
- cgtwo#
- 8-bit color frame buffer, see
          sparc/cgtwo(4),
          sun3/cgtwo(4)
- cgthree#
- 8-bit color frame buffer, see
          sparc/cgthree(4)
- cgfour#
- 8-bit color frame buffer, see
          sparc/cgfour(4),
          sun3/cgfour(4)
- cgsix#
- Accelerated 8-bit color frame buffer, see
          sparc/cgsix(4)
- cgeight#
- 24-bit color frame buffer, see
          sparc/cgeight(4)
- 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
- tcx#
- Accelerated 8/24-bit color frame buffer, see
          sparc/tcx(4)
 
- Maple bus devices:
- 
    
      - maple
- Maple bus control devices, see
          dreamcast/maple(4)
- mlcd#
- Maple bus LCD devices, see
          dreamcast/mlcd(4)
- mmem#
- Maple bus storage devices, see
          dreamcast/mmem(4)
 
- 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)
- agp#
- AGP GART devices, see
          agp(4)
- altq
- ALTQ control interface, see
          altq(4)
- amr#
- AMI MegaRaid control device, see
          amr(4)
- apm
- Power management device, see
          i386/apm(4)
- audio#
- Audio devices, see
          audio(4)
- bell#
- OPM bell device (x68k)
- bktr
- Brooktree 848/849/878/879 based TV cards, see
          bktr(4)
- bpf
- Packet filter, see
        bpf(4)
- bthub
- Bluetooth Device Hub control interface, see
          bthub(4)
- cfs#
- Coda file system device
- ch#
- SCSI media changer, see
          ch(4)
- cir#
- Consumer IR, see
        cir(4)
- clockctl
- Clock control for non root users, see
          clockctl(4)
- cpuctl
- CPU control
- crypto
- Hardware crypto access driver, see
          crypto(4)
- dmoverio
- Hardware-assisted data movers, see
          dmoverio(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)
- dtv#
- Digital TV interface, see
          dtv(4)
- fb#
- PMAX generic framebuffer pseudo-device
- fd
- File descriptors
- gpiopps#
- 1PPS signals on GPIO pins, see
          gpiopps(4)
- grf#
- Graphics frame buffer device, see
          amiga/grf(4)
- hdaudio#
- High Definition audio control device, see
          hdaudio(4)
- hdmicec#
- HDMI CEC devices
- hil
- HP300 HIL input devices, see
          hil(4)
- icp
- ICP-Vortex/Intel RAID control interface, see
          icp(4)
- iic#
- IIC bus device, see
        iic(4)
- io
- X86 IOPL access for COMPAT_10, COMPAT_FREEBSD, see
          hppa/io(4),
          i386/io(4)
- iop#
- I2O IOP control interface, see
          iop(4)
- ipl
- IP Filter
- irframe#
- IrDA physical frame, see
          irframe(4)
- ite#
- Terminal emulator interface to HP300 graphics devices, see
          amiga/ite(4)
- joy#
- Joystick device, see
        joy(4)
- kttcp
- Kernel ttcp helper device, see
          kttcp(4)
- lockstat
- Kernel locking statistics
- magma#
- Magma multiport serial/parallel cards, see
          sparc/magma(4)
- midi#
- MIDI, see midi(4)
- mfi#
- LSI MegaRAID/MegaSAS control interface, see
          mfi(4)
- 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)
- npf
- NPF packet filter
- nsmb#
- SMB requester, see
        nsmb(4)
- nvme#
- Non-Volatile Memory Host Controller Interface device driver, see
          nvme(4)
- nvme#ns*
- Non-Volatile Memory namespace
- nvmm
- NetBSD Virtual Machine Monitor, see
          nvmm(4)
- openfirm
- OpenFirmware accessor
- pad#
- Pseudo-audio device driver, see
          pad(4)
- pci#
- PCI bus access devices, see
          pci(4)
- pf
- PF packet filter
- putter
- Pass-to-Userspace Transporter
- px#
- PixelStamp Xserver access, see
          px(4)
- radio#
- Radio devices, see
          radio(4)
- random
- Random number generator, see
          rnd(4)
- rtc#
- RealTimeClock, see
          atari/rtc(4),
          evbppc/rtc(4),
          hp300/rtc(4)
- scsibus#
- SCSI busses, see
        scsi(4)
- se#
- SCSI Ethernet, see
        se(4)
- ses#
- SES/SAF-TE SCSI Devices, see
          ses(4)
- speaker
- PC speaker, see
          speaker(4)
- spi#
- SPI bus device, see
        spi(4)
- sram
- Battery backuped memory (x68k)
- srt#
- Source-address based routing
- ss#
- SCSI scanner, see ss(4)
- stic#
- PixelStamp interface chip
- sysmon
- System Monitoring hardware, see
          envsys(4)
- tap#
- Virtual Ethernet device, see
          tap(4)
- tprof
- Task profiler, see
          tprof(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)
- veriexec
- Veriexec fingerprint loader, see
          veriexec(4)
- video#
- Video capture devices, see
          video(4)
- view#
- Generic interface to graphic displays (Amiga)
- wsfont#
- Console font control, see
          wsfont(4)
- wsmux#
- wscons event multiplexor, see
          wsmux(4)
- xenevt
- Xen event interface
 
- iSCSI communication devices
- 
    
      - iscsi#
- ISCSI driver and /sbin/iscsid communication
 
- Trusted Computing devices
- 
    
      - tpm
- Trusted Platform Module, see
          tpm(4)
 
- Debugging and tracing
- 
    
      - dtrace
- Dynamic tracing framework
 
The following environment variables affect the execution ofMAKEDEV:
  - MAKEDEV_AS_LIBRARY
- If this is set, then MAKEDEVwill define several
      shell functions and then return, ignoring all its command line options and
      arguments. This is used to enable
      MAKEDEV.local(8) to
      use the shell functions defined inMAKEDEV.
  - /dev
- special device files directory
- /dev/MAKEDEV
- script described in this man page
- /dev/MAKEDEV.local
- script for site-specific devices
If the script reports an error that is difficult to understand, you can get more
  debugging output by usingsh
  -x MAKEDEV
  argument.
The MAKEDEV command appeared in
  4.2BSD. The -f,
  -m, and -s options were added
  in NetBSD 2.0. The -p,
  -t, and -M options were added
  in NetBSD 5.0. The ability to be used as a function
  library was added in NetBSD 5.0.
Not all devices listed in this manpage are supported on all platforms.
This man page is generated automatically from the same sources as
    /dev/MAKEDEV, in which the device files are not
    always sorted, which may result in an unusual (non-alphabetical) order.
In order to allow a diskless NetBSD client
    to obtain its /dev directory from a file server
    running a foreign operating system, one of the following techniques may be
    useful to populate a directory of device nodes on the foreign server:
  - If the foreign server is sufficiently similar to
      NetBSD, run MAKEDEVin an
      appropriate directory of the foreign server, using the-mflag to refer to a script that converts from
      command line arguments that would be usable with the
      NetBSD
      mknod(8) command to the
      equivalent commands for the foreign server.
- Run MAKEDEVwith the-sflag to generate an mtree(8)
      specification file; this can be done on any host with a POSIX-compliant
      shell and a few widely-available utilities. Use the
      pax(1) command with the-w-Mflags to convert the
      mtree(8) specification file
      into an archive in a format that supports device nodes (such as
      ustar format); this can be done on a
      NetBSD host, or can be done in a cross-build
      environment using
      TOOLDIR/bin/nbpax. Finally, use
      appropriate tools on the foreign server to unpack the archive and create
      the device nodes.