MKNOD

Section: User Commands (1)
Updated: August 1998
 

NAME

mknod - make block or character special files  

SYNOPSIS

mknod [options] name {bc} major minor
mknod [options] name p

GNU options (shortest form): [-m mode] [--help] [--version] [--]  

DESCRIPTION

mknod creates a FIFO (named pipe), character special file, or block special file with the specified name.

A special file is a triple (boolean, integer, integer) stored in the filesystem. The boolean chooses between character special file and block special file. The two integers are the major and minor device number.

Thus, a special file takes almost no place on disk, and is used only for communication with the operating system, not for data storage. Often special files refer to hardware devices (disk, tape, tty, printer) or to operating system services (/dev/null, /dev/random).

Block special files usually are disk-like devices (where data can be accessed given a block number, and e.g. it is meaningful to have a block cache). All other devices are character special files. (Long ago the distinction was a different one: I/O to a character special file would be unbuffered, to a block special file buffered.)

The mknod command is what creates files of this type.

The argument following name specifies the type of file to make:

p
for a FIFO
b
for a block (buffered) special file
c
for a character (unbuffered) special file

The GNU version of mknod allows u (`unbuffered') as a synonym for c.

When making a block or character special file, the major and minor device numbers must be given after the file type (in decimal, or in octal with leading 0; the GNU version also allows hexadecimal with leading 0x). By default, the mode of created files is 0666 (`a+rw') minus the bits set in the umask.  

OPTIONS

-m mode, --mode=mode
Set the mode of created files to mode, which can be symbolic as in chmod(1) and then uses the default mode as the point of departure.
 

GNU STANDARD OPTIONS

--help
Print a usage message on standard output and exit successfully.
--version
Print version information on standard output, then exit successfully.
--
Terminate option list.
 

CONFORMING TO

POSIX does not describe this command as it is nonportable, and recommends using mkfifo(1) to make FIFOs. SVID has a command /etc/mknod with the above syntax, but without the mode option.  

NOTES

On a Linux system (version 1.3.22 or newer) the file /usr/src/linux/Documentation/devices.tex contains a list of devices with device name, type, major and minor number.

The present page describes mknod as found in the fileutils-3.16 package; other versions may differ slightly. Mail corrections and additions to aeb@cwi.nl and aw@mail1.bet1.puv.fi and ragnar@lightside.ddns.org . Report bugs in the program to fileutils-bugs@gnu.ai.mit.edu.  

SEE ALSO

chmod(1), mkfifo(1), mknod(2)

.\" Copyright Andries Brouwer, Ragnar Hojland Espinosa and A. Wik, 1998.
.\"
.\" This file may be copied under the conditions described
.\" in the LDP GENERAL PUBLIC LICENSE, Version 1, September 1998
.\" that should have been distributed together with this file.