mkfs_hfs(1M)mkfs_hfs(1M)NAME
mkfs_hfs: mkfs - construct an HFS file system
SYNOPSIS
specific_options] special
[size [nsect ntrack blksize fragsize ncpg minfree rps nbpi]]
specific_options]
special [proto [nsect ntrack blksize fragsize ncpg minfree rps
nbpi]]
special
Remarks
HFS file systems are normally created with the command (see
newfs_hfs(1M)).
DESCRIPTION
The command constructs an HFS file system by writing on the special
file special. The command builds the file system with a root directory
and a directory (see fsck_hfs(1M)). The magic number for the file sys‐
tem is stored in the superblock.
The command creates the file system with a rotational delay value of
zero (see tunefs(1M)).
Options
recognizes the following options:
Specify the HFS file system type.
This option allows the
command to make the new file system in an ordi‐
nary file. In this case, special is the name of
an existing file in which to create the file sys‐
tem. When this option is used, the size of the
new file system cannot be defaulted. It must
either be specified on the command line following
special, or if a prototype file is being used, it
must be the second token in the prototype file as
usual.
There are two types of HFS file systems,
distinguished mainly by directory formats that
place different limits on the length of file
names.
If is specified, build a long-file-name file sys‐
tem that allows directory entries (file names) to
be up to (255) bytes long.
If is specified, build a short-file-name file
system that allows directory entries (file names)
to be up to (14) bytes long.
If neither nor is specified, build a file system
of the same type as the root file system.
Display the command line that was used to create the file sys‐
tem.
The file system must already exist. This option
provides a means to determine the parameters used
to construct the file system.
Echo the completed command line, but perform no other action.
The command line is generated by incorporating
the user-specified options and other information
derived from This option allows the user to ver‐
ify the command line.
Specify a list of comma separated
suboptions and/or keyword/attribute pairs from
the list below.
Controls the
largefile featurebit for the file system. The default is
This means the bit is not set, and files created on the
file system will be limited to less than 2 gigabytes in
size. If is specified, the bit is set and the maximum
size for files created on the file system is not limited
to 2 gigabytes (see mount_hfs(1M) and fsadm_hfs(1M)).
Arguments
recognizes the following arguments:
special The file name of a special file.
One of the following arguments can be included after special:
size The number of blocks in the file system. is
defined in The default value is the size of the
entire disk or disk section minus any swap or
boot space requested.
The size of HFS file systems are limited to
256GB-1 or 268,435,455 blocks.
proto The name of a file that can be opened. The com‐
mand assumes it is a prototype file and takes its
directions from that file. See "Prototype File
Structure" below.
The following optional arguments allow fine-tune control over file sys‐
tem parameters:
nsect The number of sectors per track on the disk. The
default value is 32 sectors per track.
ntrack The number of tracks per cylinder on the disk.
The default value is 16 tracks per cylinder.
blksize The primary block size for files on the file sys‐
tem. Valid values are: 4096, 8192, 16384, 32768,
and 65536. The default value is 8192 bytes.
fragsize The fragment size for files on the file system.
fragsize represents the smallest amount of disk
space to be allocated to a file. It must be a
power of two no smaller than and no smaller than
one-eighth of the file system block size. The
default value is 1024 bytes.
ncpg The number of disk cylinders per cylinder group.
This number must be in the range 1 to 32. The
default value is 16 cylinders per group.
minfree The minimum percentage of free disk space
allowed. The default value is 10 percent.
Once the file system capacity reaches this
threshold, only users with appropriate privileges
can allocate disk blocks.
rps The number of disk revolutions per second. The
default value is 60 revolutions per second.
nbpi The density of inodes in the file system speci‐
fied as the number of bytes per inode. The
default value is 6144 bytes per inode.
This number should reflect the expected average
size of files in the file system. If fewer
inodes are desired, a larger number should be
used; if more inodes are desired, a smaller num‐
ber should be used.
Note: The number of inodes that will be created
in each cylinder group of a file system is
approximately the size of the cylinder group
divided by the number of bytes per inode, up to a
limit of 2048 inodes per cylinder group. If the
size of the cylinder group is large enough to
reach this limit, the default number of bytes per
inode will be increased.
Prototype File Structure
A prototype file describes the initial file structure of a new file
system. The file contains tokens separated by spaces or newline char‐
acters. It cannot contain comments.
The first token is the name of a file to be copied onto block zero as
the bootstrap program (usually If the file name is "", no bootstrap
code is placed on the device. The second token is a number specifying
the number of blocks in the file system.
The next three tokens specify the mode, user ID, and group ID of the
root directory of the new file system, followed by the initial contents
of the root directory in the format described for a directory file
below, and terminated with a token.
A file specification consists of four tokens giving the name, mode,
user ID, and group ID, and an initial contents field. The syntax of
the initial contents field depends on the mode.
A name token is a file name that is valid for the file system. The
root directory does not have a name token.
A mode token is a 6-character string. The first character specifies
the type of the file. It can be one of the following characters:
Regular file
Block special file
Character special file
Directory
Symbolic link
Hard link
The second character of a mode token is either or to specify set-user-
ID mode or not. The third character of a mode token is either or to
specify the set-group-ID mode or not. The rest of a mode token is a
three-digit octal number giving the owner, group, and other read,
write, and execute permissions (see chmod(1)).
The user-ID and group-ID tokens define the owner of the file. These
values can be specified numerically or with symbolic names that appear
in the current password and group databases.
Refer to usergroupname(5) to understand the functionality changes with
the Numeric User Group Name feature.
Regular file. The initial contents field is the path name of an exist‐
ing file in the current file system whose contents and size are copied
to the new file.
Block or character special file. The initial contents field is two
numeric tokens that specify the major and minor device numbers.
Directory file. The initial contents field is a list of file specifi‐
cations for the entries in the directory. The list is terminated with
a token. Directories can be nested. For each directory, the command
automatically makes the and entries.
Symbolic link. The initial contents field is a path name that is used
as the path to which the symbolic link should point.
Hard link. The initial contents field is a path name that is used as
the name of a file within the new file system to which the entry should
be linked. The mode, user-ID and group-ID tokens of this entry are
ignored; they are taken from the target of the link. The target of the
link must be listed before the entry specifying the link. Hard links
to directories are not permitted.
With the exception of the permissions field of the mode token (which is
always an octal number), all numeric fields can be specified in hexa‐
decimal (using a leading octal (using a leading or decimal.
Here is a sample prototype specification. The indentation clarifies
the directory recursion.
Access Control Lists
Every file with one or more optional ACL entries consumes an extra
(continuation) inode. If you anticipate significant use of ACLs on a
new file system, you can allocate more inodes by reducing the value of
nbpi appropriately. The small default value typically causes alloca‐
tion of many more inodes than are actually necessary, even with ACLs.
To evaluate your need for extra inodes, run the command on existing
file systems. For more information on access control lists, see
acl(5).
EXAMPLES
Execute the command to create a 32MB HFS file system on the non-LVM
disk
Display the command that was used to construct the file system on
Create an HFS file system within a logical volume of a size equal to
the size of
WARNINGS
The old option, from prior releases of mkfs(1M), is no longer sup‐
ported.
mkfs_hfs(1M) cannot be executed specifying creation of a file system on
a whole disk if that disk was previously used as an LVM disk. If you
wish to do this, use mediainit(1) to reinitialize the disk first.
The option should be used with care, since older applications will not
react correctly when confronted with large files.
AUTHOR
was developed by HP and the University of California, Berkeley.
FILES
List of locations of the superblocks for the created file system.
The command appends entries to this file.
SEE ALSOchmod(1), bdf(1M), df(1M), fsadm_hfs(1M), fsck(1M), fsck_hfs(1M),
fsclean(1M), mkfs(1M), mount_hfs(1M), newfs(1M), newfs_hfs(1M), dir(4),
fstab(4), group(4), passwd(4), symlink(4), acl(5), usergroupname(5).
STANDARDS CONFORMANCEmkfs_hfs(1M)