MKFS(1M) MKFS(1M)
NAME
mkfs - construct a file system
SYNOPSIS
/etc/mkfs special proto
DESCRIPTION
Mkfs constructs a file system by writing on the special
file special according to the directions found in the pro-
totype file proto. The prototype file contains tokens
separated by spaces or new lines. The first token is the
name of a file to be copied onto block zero as the boot-
strap program, see bproc(8). The second token is a number
specifying the size of the created file system. Typically
it will be the number of blocks on the device, perhaps
diminished by space for swapping. The next token is the
number of i-nodes in the i-list. The next set of tokens
comprise the specification for the root file. File speci-
fications consist of tokens giving the mode, the user-id,
the group id, and the initial contents of the file. The
syntax of the contents field depends on the mode.
The mode token for a file is a 6 character string. The
first character specifies the type of the file. (The
characters -bcd specify regular, block special, character
special and directory files respectively.) The second
character of the type is either u or - to specify set-
user-id mode or not. The third is g or - for the set-
group-id mode. The rest of the mode is a three digit
octal number giving the owner, group, and other read,
write, execute permissions, see chmod(1).
Two decimal number tokens come after the mode; they spec-
ify the user and group ID's of the owner of the file.
If the file is a regular file, the next token is a path-
name whence the contents and size are copied.
If the file is a block or character special file, two dec-
imal number tokens follow which give the major and minor
device numbers.
If the file is a directory, mkfs makes the entries . and
.. and then reads a list of names and (recursively) file
specifications for the entries in the directory. The scan
is terminated with the token $.
If the prototype file cannot be opened and its name con-
sists of a string of digits, mkfs builds a file system
with a single empty directory on it. The size of the file
system is the value of proto interpreted as a decimal num-
ber. The number of i-nodes is calculated as a function of
the filsystem size. The boot program is left uninitial-
ized.
1
MKFS(1M) MKFS(1M)
A sample prototype specification follows:
/usr/mdec/uboot
4872 55
d--777 3 1
usr d--777 3 1
sh ---755 3 1 /bin/sh
ken d--755 6 1
$
b0 b--644 3 1 0 0
c0 c--644 3 1 0 0
$
$
SEE ALSO
filsys(5), dir(5), bproc(8)
BUGS
There should be some way to specify links.
2