mirror of
https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
synced 2024-12-11 19:03:40 +08:00
b75a4ce18c
Addresses-Debian-Bug: #665427 Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
432 lines
12 KiB
Groff
432 lines
12 KiB
Groff
.\" -*- nroff -*-
|
|
.\" Copyright 2006 by Theodore Ts'o. All Rights Reserved.
|
|
.\" This file may be copied under the terms of the GNU Public License.
|
|
.\"
|
|
.TH mke2fs.conf 5 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@"
|
|
.SH NAME
|
|
mke2fs.conf \- Configuration file for mke2fs
|
|
.SH DESCRIPTION
|
|
.I mke2fs.conf
|
|
is the configuration file for
|
|
.BR mke2fs (8).
|
|
It controls the default parameters used by
|
|
.BR mke2fs (8)
|
|
when it is creating ext2 or ext3 filesystems.
|
|
.PP
|
|
The
|
|
.I mke2fs.conf
|
|
file uses an INI-style format. Stanzas, or top-level sections, are
|
|
delimited by square braces: [ ]. Within each section, each line
|
|
defines a relation, which assigns tags to values, or to a subsection,
|
|
which contains further relations or subsections.
|
|
.\" Tags can be assigned multiple values
|
|
An example of the INI-style format used by this configuration file
|
|
follows below:
|
|
.P
|
|
[section1]
|
|
.br
|
|
tag1 = value_a
|
|
.br
|
|
tag1 = value_b
|
|
.br
|
|
tag2 = value_c
|
|
.P
|
|
[section 2]
|
|
.br
|
|
tag3 = {
|
|
.br
|
|
subtag1 = subtag_value_a
|
|
.br
|
|
subtag1 = subtag_value_b
|
|
.br
|
|
subtag2 = subtag_value_c
|
|
.br
|
|
}
|
|
.br
|
|
tag1 = value_d
|
|
.br
|
|
tag2 = value_e
|
|
.br
|
|
}
|
|
.P
|
|
Comments are delimited by a semicolon (';') or a hash ('#') character
|
|
at the beginning of the comment, and are terminated by the end of
|
|
line character.
|
|
.P
|
|
Tags and values must be quoted using double quotes if they contain
|
|
spaces. Within a quoted string, the standard backslash interpretations
|
|
apply: "\en" (for the newline character),
|
|
"\et" (for the tab character), "\eb" (for the backspace character),
|
|
and "\e\e" (for the backslash character).
|
|
.P
|
|
Some relations expect a boolean value. The parser is quite liberal on
|
|
recognizing ``yes'', '`y'', ``true'', ``t'', ``1'', ``on'', etc. as a
|
|
boolean true value, and ``no'', ``n'', ``false'', ``nil'', ``0'',
|
|
``off'' as a boolean false value.
|
|
.P
|
|
The following stanzas are used in the
|
|
.I mke2fs.conf
|
|
file. They will be described in more detail in future sections of this
|
|
document.
|
|
.TP
|
|
.I [defaults]
|
|
Contains relations which define the default parameters
|
|
used by
|
|
.BR mke2fs (8).
|
|
In general, these defaults may be overridden by a definition in the
|
|
.B fs_types
|
|
stanza, or by an command-line option provided by the user.
|
|
.TP
|
|
.I [fs_types]
|
|
Contains relations which define defaults that should be used for specific
|
|
filesystem types. The filesystem type can be specified explicitly using
|
|
the
|
|
.B -T
|
|
option to
|
|
.BR mke2fs (8).
|
|
.SH THE [defaults] STANZA
|
|
The following relations are defined in the
|
|
.I [defaults]
|
|
stanza.
|
|
.TP
|
|
.I base_features
|
|
This relation specifies the filesystems features which are enabled in
|
|
newly created filesystems. It may be overridden by the
|
|
.I base_features
|
|
relation found in the filesystem or usage type subsection of
|
|
the
|
|
.I [fs_types]
|
|
stanza.
|
|
.TP
|
|
.I default_features
|
|
This relation specifies a set of features that should be added or
|
|
removed to the features listed in the
|
|
.I base_features
|
|
relation. It may be overridden by the filesystem-specific
|
|
.I default_features
|
|
in the filesystem or usage type subsection of
|
|
.IR [fs_types] ,
|
|
and by the
|
|
.B -O
|
|
command-line option
|
|
to
|
|
.BR mke2fs (8).
|
|
.TP
|
|
.I enable_periodic_fsck
|
|
This boolean relation specifies whether periodic filesystem checks should be
|
|
enforced at boot time. If set to true, checks will be forced every
|
|
180 days, or after a random number of mounts. These values may
|
|
be changed later via the
|
|
.B -i
|
|
and
|
|
.B -c
|
|
command-line options to
|
|
.BR tune2fs (8).
|
|
.TP
|
|
.I force_undo
|
|
This boolean relation, if set to a value of true, forces
|
|
.B mke2fs
|
|
to always try to create an undo file, even if the undo file might be
|
|
huge and it might extend the time to create the filesystem image
|
|
because the inode table isn't being initialized lazily.
|
|
.TP
|
|
.I fs_type
|
|
This relation specifies the default filesystem type if the user does not
|
|
specify it via the
|
|
.B \-t
|
|
option, or if
|
|
.B mke2fs
|
|
is not started using a program name of the form
|
|
.BI mkfs. fs-type\fR.
|
|
If both the user and the
|
|
.B mke2fs.conf
|
|
file does not specify a default filesystem type, mke2fs will use a
|
|
default filesystem type of
|
|
.IR ext3
|
|
if a journal was requested via a command-line option, or
|
|
.I ext2
|
|
if not.
|
|
.TP
|
|
.I blocksize
|
|
This relation specifies the default blocksize if the user does not
|
|
specify a blocksize on the command line, and the filesystem-type
|
|
specific section of the configuration file does not specify a blocksize.
|
|
.TP
|
|
.I hash_alg
|
|
This relation specifies the default hash algorithm used for the
|
|
new filesystems with hashed b-tree directories. Valid algorithms
|
|
accepted are:
|
|
.IR legacy ,
|
|
.IR half_md4 ,
|
|
and
|
|
.IR tea .
|
|
.TP
|
|
.I inode_ratio
|
|
This relation specifies the default inode ratio if the user does not
|
|
specify one on the command line, and the filesystem-type
|
|
specific section of the configuration file does not specify a default
|
|
inode ratio.
|
|
.TP
|
|
.I inode_size
|
|
This relation specifies the default inode size if the user does not
|
|
specify one on the command line, and the filesystem-type
|
|
specific section of the configuration file does not specify a default
|
|
inode size.
|
|
.TP
|
|
.I reserved_ratio
|
|
This relation specifies the default percentage of filesystem blocks
|
|
reserved for the super-user, if the user does not
|
|
specify one on the command line, and the filesystem-type
|
|
specific section of the configuration file does not specify a default
|
|
reserved ratio. This value can be a floating point number.
|
|
.TP
|
|
.I undo_dir
|
|
This relation specifies the directory where the undo file should be
|
|
stored. It can be overridden via the
|
|
.B E2FSPROGS_UNDO_DIR
|
|
environment variable. If the directory location is set to the value
|
|
.IR none ,
|
|
.B mke2fs
|
|
will not create an undo file.
|
|
.SH THE [fs_types] STANZA
|
|
Each tag in the
|
|
.I [fs_types]
|
|
stanza names a filesystem type or usage type which can be specified via the
|
|
.B \-t
|
|
or
|
|
.B \-T
|
|
options to
|
|
.BR mke2fs (8),
|
|
respectively.
|
|
.P
|
|
The
|
|
.B mke2fs
|
|
program constructs a list of fs_types by concatenating the filesystem
|
|
type (i.e., ext2, ext3, etc.) with the usage type list. For most
|
|
configuration options,
|
|
.B mke2fs
|
|
will look for a subsection in the
|
|
.I [fs_types]
|
|
stanza corresponding with each entry in the constructed list, with later
|
|
entries overriding earlier filesystem or usage types.
|
|
For
|
|
example, consider the following
|
|
.B mke2fs.conf
|
|
fragment:
|
|
.P
|
|
[defaults]
|
|
.br
|
|
base_features = sparse_super,filetype,resize_inode,dir_index
|
|
.br
|
|
blocksize = 4096
|
|
.br
|
|
inode_size = 256
|
|
.br
|
|
inode_ratio = 16384
|
|
.br
|
|
|
|
.br
|
|
[fs_types]
|
|
.br
|
|
ext3 = {
|
|
.br
|
|
features = has_journal
|
|
.br
|
|
}
|
|
.br
|
|
ext4 = {
|
|
.br
|
|
features = extents,flex_bg
|
|
.br
|
|
inode_size = 256
|
|
.br
|
|
}
|
|
.br
|
|
small = {
|
|
.br
|
|
blocksize = 1024
|
|
.br
|
|
inode_ratio = 4096
|
|
.br
|
|
}
|
|
.br
|
|
floppy = {
|
|
.br
|
|
features = ^resize_inode
|
|
.br
|
|
blocksize = 1024
|
|
.br
|
|
inode_size = 128
|
|
.br
|
|
}
|
|
.P
|
|
If mke2fs started with a program name of
|
|
.BR mke2fs.ext4 ,
|
|
then the filesystem type of ext4 will be used. If the filesystem is
|
|
smaller than 3 megabytes, and no usage type is specified, then
|
|
.B mke2fs
|
|
will use a default
|
|
usage type of
|
|
.IR floppy .
|
|
This results in an fs_types list of "ext4, floppy". Both the ext4
|
|
subsection and the floppy subsection define an
|
|
.I inode_size
|
|
relation, but since the later entries in the fs_types list supersede
|
|
earlier ones, the configuration parameter for fs_types.floppy.inode_size
|
|
will be used, so the filesystem will have an inode size of 128.
|
|
.P
|
|
The exception to this resolution is the
|
|
.I features
|
|
tag, which is specifies a set of changes to the features used by the
|
|
filesystem, and which is cumulative. So in the above example, first
|
|
the configuration relation defaults.base_features would enable an
|
|
initial feature set with the sparse_super, filetype, resize_inode, and
|
|
dir_index features enabled. Then configuration relation
|
|
fs_types.ext4.features would enable the extents and flex_bg
|
|
features, and finally the configuration relation
|
|
fs_types.floppy.features would remove
|
|
the resize_inode feature, resulting in a filesystem feature set
|
|
consisting of the sparse_super, filetype, resize_inode, dir_index,
|
|
extents_and flex_bg features.
|
|
.P
|
|
For each filesystem type, the following tags may be used in that
|
|
fs_type's subsection:
|
|
.TP
|
|
.I base_features
|
|
This relation specifies the features which are initially enabled for this
|
|
filesystem type. Only one
|
|
.I base_features
|
|
will be used, so if there are multiple entries in the fs_types list
|
|
whose subsections define the
|
|
.I base_features
|
|
relation, only the last will be used by
|
|
.BR mke2fs (8).
|
|
.TP
|
|
.I features
|
|
This relation specifies a comma-separated list of features edit
|
|
requests which modify the feature set
|
|
used by the newly constructed filesystem. The syntax is the same as the
|
|
.B -O
|
|
command-line option to
|
|
.BR mke2fs (8);
|
|
that is, a feature can be prefixed by a caret ('^') symbol to disable
|
|
a named feature. Each
|
|
.I feature
|
|
relation specified in the fs_types list will be applied in the order
|
|
found in the fs_types list.
|
|
.TP
|
|
.I default_features
|
|
This relation specifies set of features which should be enabled or
|
|
disabled after applying the features listed in the
|
|
.I base_features
|
|
and
|
|
.I features
|
|
relations. It may be overridden by the
|
|
.B -O
|
|
command-line option to
|
|
.BR mke2fs (8).
|
|
.TP
|
|
.I auto_64-bit_support
|
|
This relation is a boolean which specifies whether
|
|
.BR mke2fs (8)
|
|
should automatically add the 64bit feature if the number of blocks for
|
|
the file system requires this feature to be enabled. The resize_inode
|
|
feature is also automatically disabled since it doesn't support 64-bit
|
|
block numbers.
|
|
.TP
|
|
.I default_mntopts
|
|
This relation specifies the set of mount options which should be enabled
|
|
by default. These may be changed at a later time with the
|
|
.B -o
|
|
command-line option to
|
|
.BR tune2fs (8).
|
|
.TP
|
|
.I blocksize
|
|
This relation specifies the default blocksize if the user does not
|
|
specify a blocksize on the command line.
|
|
.TP
|
|
.I lazy_itable_init
|
|
This boolean relation specifies whether the inode table should
|
|
be lazily initialized. It only has meaning if the uninit_bg feature is
|
|
enabled. If lazy_itable_init is true and the uninit_bg feature is
|
|
enabled, the inode table will
|
|
not fully initialized by
|
|
.BR mke2fs (8).
|
|
This speeds up filesystem
|
|
initialization noticeably, but it requires the kernel to finish
|
|
initializing the filesystem in the background when the filesystem is
|
|
first mounted.
|
|
.TP
|
|
.I inode_ratio
|
|
This relation specifies the default inode ratio if the user does not
|
|
specify one on the command line.
|
|
.TP
|
|
.I inode_size
|
|
This relation specifies the default inode size if the user does not
|
|
specify one on the command line.
|
|
.TP
|
|
.I reserved_ratio
|
|
This relation specifies the default percentage of filesystem blocks
|
|
reserved for the super-user, if the user does not specify one on the command
|
|
line.
|
|
.TP
|
|
.I hash_alg
|
|
This relation specifies the default hash algorithm used for the
|
|
new filesystems with hashed b-tree directories. Valid algorithms
|
|
accepted are:
|
|
.IR legacy ,
|
|
.IR half_md4 ,
|
|
and
|
|
.IR tea .
|
|
.TP
|
|
.I flex_bg_size
|
|
This relation specifies the number of block groups that will be packed
|
|
together to create one large virtual block group on an ext4 filesystem.
|
|
This improves meta-data locality and performance on meta-data heavy
|
|
workloads. The number of groups must be a power of 2 and may only be
|
|
specified if the flex_bg filesystem feature is enabled.
|
|
.TP
|
|
.I options
|
|
This relation specifies additional extended options which should be
|
|
treated by
|
|
.BR mke2fs (8)
|
|
as if they were prepended to the argument of the
|
|
.B -E
|
|
option. This can be used to configure the default extended options used
|
|
by
|
|
.BR mke2fs (8)
|
|
on a per-filesystem type basis.
|
|
.TP
|
|
.I discard
|
|
This boolean relation specifies whether the
|
|
.BR mke2fs (8)
|
|
should attempt to discard device prior to filesystem creation.
|
|
.TP
|
|
.I cluster_size
|
|
This relation specifies the default cluster size if the bigalloc file
|
|
system feature is enabled. It can be overridden via the
|
|
.B \-C
|
|
command line option to
|
|
.BR mke2fs (8)
|
|
.SH THE [devices] STANZA
|
|
Each tag in the
|
|
.I [devices]
|
|
stanza names device name so that per-device defaults can be specified.
|
|
.TP
|
|
.I fs_type
|
|
This relation specifies the default parameter for the
|
|
.B \-t
|
|
option, if this option isn't specified on the command line.
|
|
.TP
|
|
.I usage_types
|
|
This relation specifies the default parameter for the
|
|
.B \-T
|
|
option, if this option isn't specified on the command line.
|
|
.SH FILES
|
|
.TP
|
|
.I /etc/mke2fs.conf
|
|
The configuration file for
|
|
.BR mke2fs (8).
|
|
.SH SEE ALSO
|
|
.BR mke2fs (8)
|