1191 lines
29 KiB
HTML
1191 lines
29 KiB
HTML
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<HTML><HEAD><TITLE>Man page of MKE2FS</TITLE>
|
|
</HEAD><BODY>
|
|
<H1>MKE2FS</H1>
|
|
Section: Maintenance Commands (8)<BR>Updated: January 2020<BR><A HREF="#index">Index</A>
|
|
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
|
|
|
|
<A NAME="lbAB"> </A>
|
|
<H2>NAME</H2>
|
|
|
|
mke2fs - create an ext2/ext3/ext4 filesystem
|
|
<A NAME="lbAC"> </A>
|
|
<H2>SYNOPSIS</H2>
|
|
|
|
<B>mke2fs</B>
|
|
|
|
[
|
|
<B>-c</B>
|
|
|
|
|
|
|
<B>-l</B>
|
|
|
|
<I>filename</I>
|
|
|
|
]
|
|
[
|
|
<B>-b</B>
|
|
|
|
<I>block-size</I>
|
|
|
|
]
|
|
[
|
|
<B>-C</B>
|
|
|
|
<I>cluster-size</I>
|
|
|
|
]
|
|
[
|
|
<B>-d</B>
|
|
|
|
<I>root-directory</I>
|
|
|
|
]
|
|
[
|
|
<B>-D</B>
|
|
|
|
]
|
|
[
|
|
<B>-g</B>
|
|
|
|
<I>blocks-per-group</I>
|
|
|
|
]
|
|
[
|
|
<B>-G</B>
|
|
|
|
<I>number-of-groups</I>
|
|
|
|
]
|
|
[
|
|
<B>-i</B>
|
|
|
|
<I>bytes-per-inode</I>
|
|
|
|
]
|
|
[
|
|
<B>-I</B>
|
|
|
|
<I>inode-size</I>
|
|
|
|
]
|
|
[
|
|
<B>-j</B>
|
|
|
|
]
|
|
[
|
|
<B>-J</B>
|
|
|
|
<I>journal-options</I>
|
|
|
|
]
|
|
[
|
|
<B>-N</B>
|
|
|
|
<I>number-of-inodes</I>
|
|
|
|
]
|
|
[
|
|
<B>-n</B>
|
|
|
|
]
|
|
[
|
|
<B>-m</B>
|
|
|
|
<I>reserved-blocks-percentage</I>
|
|
|
|
]
|
|
[
|
|
<B>-o</B>
|
|
|
|
<I>creator-os</I>
|
|
|
|
]
|
|
[
|
|
<B>-O</B>
|
|
|
|
[^]<I>feature</I>[,...]
|
|
]
|
|
[
|
|
<B>-q</B>
|
|
|
|
]
|
|
[
|
|
<B>-r</B>
|
|
|
|
<I>fs-revision-level</I>
|
|
|
|
]
|
|
[
|
|
<B>-E</B>
|
|
|
|
<I>extended-options</I>
|
|
|
|
]
|
|
[
|
|
<B>-v</B>
|
|
|
|
]
|
|
[
|
|
<B>-F</B>
|
|
|
|
]
|
|
[
|
|
<B>-L</B>
|
|
|
|
<I>volume-label</I>
|
|
|
|
]
|
|
[
|
|
<B>-M</B>
|
|
|
|
<I>last-mounted-directory</I>
|
|
|
|
]
|
|
[
|
|
<B>-S</B>
|
|
|
|
]
|
|
[
|
|
<B>-t</B>
|
|
|
|
<I>fs-type</I>
|
|
|
|
]
|
|
[
|
|
<B>-T</B>
|
|
|
|
<I>usage-type</I>
|
|
|
|
]
|
|
[
|
|
<B>-U</B>
|
|
|
|
<I>UUID</I>
|
|
|
|
]
|
|
[
|
|
<B>-V</B>
|
|
|
|
]
|
|
[
|
|
<B>-e</B>
|
|
|
|
<I>errors-behavior</I>
|
|
|
|
]
|
|
[
|
|
<B>-z</B>
|
|
|
|
<I>undo_file</I>
|
|
|
|
]
|
|
<I>device</I>
|
|
|
|
[
|
|
<I>fs-size</I>
|
|
|
|
]
|
|
<P>
|
|
<B>mke2fs -O journal_dev</B>
|
|
|
|
[
|
|
<B>-b</B>
|
|
|
|
<I>block-size</I>
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
|
|
[
|
|
<B>-L</B>
|
|
|
|
<I>volume-label</I>
|
|
|
|
]
|
|
[
|
|
<B>-n</B>
|
|
|
|
]
|
|
[
|
|
<B>-q</B>
|
|
|
|
]
|
|
[
|
|
<B>-v</B>
|
|
|
|
]
|
|
<I>external-journal</I>
|
|
|
|
[
|
|
<I>fs-size</I>
|
|
|
|
]
|
|
<A NAME="lbAD"> </A>
|
|
<H2>DESCRIPTION</H2>
|
|
|
|
<B>mke2fs</B>
|
|
|
|
is used to create an ext2, ext3, or ext4 filesystem, usually in a disk
|
|
partition (or file) named by
|
|
<I>device</I>.
|
|
|
|
<P>
|
|
|
|
The file system size is specified by
|
|
<I>fs-size</I>.
|
|
|
|
If
|
|
<I>fs-size</I>
|
|
|
|
does not have a suffix, it is interpreted as power-of-two kilobytes,
|
|
unless the
|
|
<B>-b</B>
|
|
|
|
<I>blocksize</I>
|
|
|
|
option is specified, in which case
|
|
<I>fs-size</I>
|
|
|
|
is interpreted as the number of
|
|
<I>blocksize</I>
|
|
|
|
blocks. If the fs-size is suffixed by 'k', 'm', 'g', 't'
|
|
(either upper-case or lower-case), then it is interpreted in
|
|
power-of-two kilobytes, megabytes, gigabytes, terabytes, etc.
|
|
If
|
|
<I>fs-size</I>
|
|
|
|
is omitted,
|
|
<B>mke2fs</B>
|
|
|
|
will create the file system based on the device size.
|
|
<P>
|
|
|
|
If
|
|
<B>mke2fs</B>
|
|
|
|
is run as
|
|
<B>mkfs.XXX</B>
|
|
|
|
(i.e.,
|
|
<B>mkfs.ext2</B>,
|
|
|
|
<B>mkfs.ext3</B>,
|
|
|
|
or
|
|
<B>mkfs.ext4</B>)
|
|
|
|
the option
|
|
<B>-t</B>
|
|
|
|
<I>XXX</I>
|
|
|
|
is implied; so
|
|
<B>mkfs.ext3</B>
|
|
|
|
will create a file system for use with ext3,
|
|
<B>mkfs.ext4</B>
|
|
|
|
will create a file system for use with ext4, and so on.
|
|
<P>
|
|
|
|
The defaults of the parameters for the newly created filesystem, if not
|
|
overridden by the options listed below, are controlled by the
|
|
<B>/etc/mke2fs.conf</B>
|
|
|
|
configuration file. See the
|
|
<B><A HREF="/cgi-bin/man/man2html?5+mke2fs.conf">mke2fs.conf</A></B>(5)
|
|
|
|
manual page for more details.
|
|
<A NAME="lbAE"> </A>
|
|
<H2>OPTIONS</H2>
|
|
|
|
<DL COMPACT>
|
|
<DT id="1"><B>-b</B><I> block-size</I>
|
|
|
|
<DD>
|
|
Specify the size of blocks in bytes. Valid block-size values are 1024,
|
|
2048 and 4096 bytes per block. If omitted,
|
|
block-size is heuristically determined by the filesystem size and
|
|
the expected usage of the filesystem (see the
|
|
<B>-T</B>
|
|
|
|
option). If
|
|
<I>block-size</I>
|
|
|
|
is preceded by a negative sign ('-'), then
|
|
<B>mke2fs</B>
|
|
|
|
will use heuristics to determine the
|
|
appropriate block size, with the constraint that the block size will be
|
|
at least
|
|
<I>block-size</I>
|
|
|
|
bytes. This is useful for certain hardware devices which require that
|
|
the blocksize be a multiple of 2k.
|
|
<DT id="2"><B>-c</B>
|
|
|
|
<DD>
|
|
Check the device for bad blocks before creating the file system. If
|
|
this option is specified twice, then a slower read-write
|
|
test is used instead of a fast read-only test.
|
|
<DT id="3"><B>-C cluster-size</B>
|
|
|
|
<DD>
|
|
Specify the size of cluster in bytes for filesystems using the bigalloc
|
|
feature. Valid cluster-size values are from 2048 to 256M bytes per
|
|
cluster. This can only be specified if the bigalloc feature is
|
|
enabled. (See the
|
|
<B>ext4 (5)</B>
|
|
|
|
man page for more details about bigalloc.) The default cluster size if
|
|
bigalloc is enabled is 16 times the block size.
|
|
<DT id="4"><B>-d</B><I> root-directory</I>
|
|
|
|
<DD>
|
|
Copy the contents of the given directory into the root directory of the
|
|
filesystem.
|
|
<DT id="5"><B>-D</B>
|
|
|
|
<DD>
|
|
Use direct I/O when writing to the disk. This avoids mke2fs dirtying a
|
|
lot of buffer cache memory, which may impact other applications running
|
|
on a busy server. This option will cause mke2fs to run much more
|
|
slowly, however, so there is a tradeoff to using direct I/O.
|
|
<DT id="6"><B>-e</B><I> error-behavior</I>
|
|
|
|
<DD>
|
|
Change the behavior of the kernel code when errors are detected.
|
|
In all cases, a filesystem error will cause
|
|
<B><A HREF="/cgi-bin/man/man2html?8+e2fsck">e2fsck</A></B>(8)
|
|
|
|
to check the filesystem on the next boot.
|
|
<I>error-behavior</I>
|
|
|
|
can be one of the following:
|
|
<DL COMPACT><DT id="7"><DD>
|
|
<DL COMPACT>
|
|
<DT id="8"><B>continue</B>
|
|
|
|
<DD>
|
|
Continue normal execution.
|
|
<DT id="9"><B>remount-ro</B>
|
|
|
|
<DD>
|
|
Remount filesystem read-only.
|
|
<DT id="10"><B>panic</B>
|
|
|
|
<DD>
|
|
Cause a kernel panic.
|
|
</DL>
|
|
</DL>
|
|
|
|
<DT id="11"><B>-E</B><I> extended-options</I>
|
|
|
|
<DD>
|
|
Set extended options for the filesystem. Extended options are comma
|
|
separated, and may take an argument using the equals ('=') sign. The
|
|
<B>-E</B>
|
|
|
|
option used to be
|
|
<B>-R</B>
|
|
|
|
in earlier versions of
|
|
<B>mke2fs</B>.
|
|
|
|
The
|
|
<B>-R</B>
|
|
|
|
option is still accepted for backwards compatibility, but is deprecated.
|
|
The following extended options are supported:
|
|
<DL COMPACT><DT id="12"><DD>
|
|
<DL COMPACT>
|
|
<DT id="13"><B>encoding=</B><I>encoding-name</I>
|
|
|
|
<DD>
|
|
Enable the
|
|
<I>casefold</I>
|
|
|
|
feature in the super block and set
|
|
<I>encoding-name</I>
|
|
|
|
as the encoding to be used. If
|
|
<I>encoding-name</I>
|
|
|
|
is not specified, the encoding defined in
|
|
<B><A HREF="/cgi-bin/man/man2html?5+mke2fs.conf">mke2fs.conf</A></B>(5)
|
|
|
|
is used.
|
|
<DT id="14"><B>encoding_flags=</B><I>encoding-flags</I>
|
|
|
|
<DD>
|
|
Define parameters for file name character encoding operations. If a
|
|
flag is not changed using this parameter, its default value is used.
|
|
<I>encoding-flags</I>
|
|
|
|
should be a comma-separated lists of flags to be enabled. To disable a
|
|
flag, add it to the list with the prefix "no".
|
|
<P>
|
|
The only flag that can be set right now is
|
|
<I>strict</I>
|
|
|
|
which means that invalid strings should be rejected by the file system.
|
|
In the default configuration, the
|
|
<I>strict</I>
|
|
|
|
flag is disabled.
|
|
<DT id="15"><B>mmp_update_interval=</B><I>interval</I>
|
|
|
|
<DD>
|
|
Adjust the initial MMP update interval to
|
|
<I>interval</I>
|
|
|
|
seconds. Specifying an
|
|
<I>interval</I>
|
|
|
|
of 0 means to use the default interval. The specified interval must
|
|
be less than 300 seconds. Requires that the
|
|
<B>mmp</B>
|
|
|
|
feature be enabled.
|
|
<DT id="16"><B>stride=</B><I>stride-size</I>
|
|
|
|
<DD>
|
|
Configure the filesystem for a RAID array with
|
|
<I>stride-size</I>
|
|
|
|
filesystem blocks. This is the number of blocks read or written to disk
|
|
before moving to the next disk, which is sometimes referred to as the
|
|
<I>chunk size.</I>
|
|
|
|
This mostly affects placement of filesystem metadata like bitmaps at
|
|
<B>mke2fs</B>
|
|
|
|
time to avoid placing them on a single disk, which can hurt performance.
|
|
It may also be used by the block allocator.
|
|
<DT id="17"><B>stripe_width=</B><I>stripe-width</I>
|
|
|
|
<DD>
|
|
Configure the filesystem for a RAID array with
|
|
<I>stripe-width</I>
|
|
|
|
filesystem blocks per stripe. This is typically stride-size * N, where
|
|
N is the number of data-bearing disks in the RAID (e.g. for RAID 5 there is one
|
|
parity disk, so N will be the number of disks in the array minus 1).
|
|
This allows the block allocator to prevent read-modify-write of the
|
|
parity in a RAID stripe if possible when the data is written.
|
|
<DT id="18"><B>offset=</B><I>offset</I>
|
|
|
|
<DD>
|
|
Create the filesystem at an offset from the beginning of the device or
|
|
file. This can be useful when creating disk images for virtual machines.
|
|
<DT id="19"><B>resize=</B><I>max-online-resize</I>
|
|
|
|
<DD>
|
|
Reserve enough space so that the block group descriptor table can grow
|
|
to support a filesystem that has
|
|
<I>max-online-resize</I>
|
|
|
|
blocks.
|
|
<DT id="20"><B>lazy_itable_init</B>[<B>= </B><I><0 to disable, 1 to enable></I>]
|
|
|
|
<DD>
|
|
If enabled and the uninit_bg feature is enabled, the inode table will
|
|
not be fully initialized by
|
|
<B>mke2fs</B>.
|
|
|
|
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. If the option value is omitted, it defaults to 1 to
|
|
enable lazy inode table zeroing.
|
|
<DT id="21"><B>lazy_journal_init</B>[<B>= </B><I><0 to disable, 1 to enable></I>]
|
|
|
|
<DD>
|
|
If enabled, the journal inode will not be fully zeroed out by
|
|
<B>mke2fs</B>.
|
|
|
|
This speeds up filesystem initialization noticeably, but carries some
|
|
small risk if the system crashes before the journal has been overwritten
|
|
entirely one time. If the option value is omitted, it defaults to 1 to
|
|
enable lazy journal inode zeroing.
|
|
<DT id="22"><B>no_copy_xattrs</B>
|
|
|
|
<DD>
|
|
Normally
|
|
<B>mke2fs</B>
|
|
|
|
will copy the extended attributes of the files in the directory
|
|
hierarchy specified via the (optional)
|
|
<B>-d</B>
|
|
|
|
option. This will disable the copy and leaves the files in the newly
|
|
created file system without any extended attributes.
|
|
<DT id="23"><B>num_backup_sb=</B><I><0|1|2></I>
|
|
|
|
<DD>
|
|
If the
|
|
<B>sparse_super2</B>
|
|
|
|
file system feature is enabled this option controls whether there will
|
|
be 0, 1, or 2 backup superblocks created in the file system.
|
|
<DT id="24"><B>packed_meta_blocks</B>[<B>= </B><I><0 to disable, 1 to enable></I>]
|
|
|
|
<DD>
|
|
Place the allocation bitmaps and the inode table at the beginning of the
|
|
disk. This option requires that the flex_bg file system feature to be
|
|
enabled in order for it to have effect, and will also create the journal
|
|
at the beginning of the file system. This option is useful for flash
|
|
devices that use SLC flash at the beginning of the disk.
|
|
It also maximizes the range of contiguous data blocks, which
|
|
can be useful for certain specialized use cases, such as supported
|
|
Shingled Drives.
|
|
<DT id="25"><B>root_owner</B><I>[=uid:gid]</I>
|
|
|
|
<DD>
|
|
Specify the numeric user and group ID of the root directory. If no UID:GID
|
|
is specified, use the user and group ID of the user running <B>mke2fs</B>.
|
|
In <B>mke2fs</B> 1.42 and earlier the UID and GID of the root directory were
|
|
set by default to the UID and GID of the user running the mke2fs command.
|
|
The <B>root_owner=</B> option allows explicitly specifying these values,
|
|
and avoid side-effects for users that do not expect the contents of the
|
|
filesystem to change based on the user running <B>mke2fs</B>.
|
|
<DT id="26"><B>test_fs</B>
|
|
|
|
<DD>
|
|
Set a flag in the filesystem superblock indicating that it may be
|
|
mounted using experimental kernel code, such as the ext4dev filesystem.
|
|
<DT id="27"><B>discard</B>
|
|
|
|
<DD>
|
|
Attempt to discard blocks at mkfs time (discarding blocks initially is useful
|
|
on solid state devices and sparse / thin-provisioned storage). When the device
|
|
advertises that discard also zeroes data (any subsequent read after the discard
|
|
and before write returns zero), then mark all not-yet-zeroed inode tables as
|
|
zeroed. This significantly speeds up filesystem initialization. This is set
|
|
as default.
|
|
<DT id="28"><B>nodiscard</B>
|
|
|
|
<DD>
|
|
Do not attempt to discard blocks at mkfs time.
|
|
<DT id="29"><B>quotatype</B>
|
|
|
|
<DD>
|
|
Specify the which quota types (usrquota, grpquota, prjquota) which
|
|
should be enabled in the created file system. The argument of this
|
|
extended option should be a colon separated list. This option has
|
|
effect only if the
|
|
<B>quota</B>
|
|
|
|
feature is set. The default quota types to be initialized if this
|
|
option is not specified is both user and group quotas. If the project
|
|
feature is enabled that project quotas will be initialized as well.
|
|
</DL>
|
|
</DL>
|
|
|
|
<DT id="30"><B>-F</B>
|
|
|
|
<DD>
|
|
Force
|
|
<B>mke2fs</B>
|
|
|
|
to create a filesystem, even if the specified device is not a partition
|
|
on a block special device, or if other parameters do not make sense.
|
|
In order to force
|
|
<B>mke2fs</B>
|
|
|
|
to create a filesystem even if the filesystem appears to be in use
|
|
or is mounted (a truly dangerous thing to do), this option must be
|
|
specified twice.
|
|
<DT id="31"><B>-g</B><I> blocks-per-group</I>
|
|
|
|
<DD>
|
|
Specify the number of blocks in a block group. There is generally no
|
|
reason for the user to ever set this parameter, as the default is optimal
|
|
for the filesystem. (For administrators who are creating
|
|
filesystems on RAID arrays, it is preferable to use the
|
|
<I>stride</I>
|
|
|
|
RAID parameter as part of the
|
|
<B>-E</B>
|
|
|
|
option rather than manipulating the number of blocks per group.)
|
|
This option is generally used by developers who
|
|
are developing test cases.
|
|
<DT id="32"><DD>
|
|
If the bigalloc feature is enabled, the
|
|
<B>-g</B>
|
|
|
|
option will specify the number of clusters in a block group.
|
|
<DT id="33"><B>-G</B><I> number-of-groups</I>
|
|
|
|
<DD>
|
|
Specify the number of block groups that will be packed together to
|
|
create a larger virtual block group (or "flex_bg group") in 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
|
|
<B>flex_bg</B>
|
|
|
|
filesystem feature is enabled.
|
|
<DT id="34"><B>-i</B><I> bytes-per-inode</I>
|
|
|
|
<DD>
|
|
Specify the bytes/inode ratio.
|
|
<B>mke2fs</B>
|
|
|
|
creates an inode for every
|
|
<I>bytes-per-inode</I>
|
|
|
|
bytes of space on the disk. The larger the
|
|
<I>bytes-per-inode</I>
|
|
|
|
ratio, the fewer inodes will be created. This value generally shouldn't
|
|
be smaller than the blocksize of the filesystem, since in that case more
|
|
inodes would be made than can ever be used. Be warned that it is not
|
|
possible to change this ratio on a filesystem after it is created, so be
|
|
careful deciding the correct value for this parameter. Note that resizing
|
|
a filesystem changes the number of inodes to maintain this ratio.
|
|
<DT id="35"><B>-I</B><I> inode-size</I>
|
|
|
|
<DD>
|
|
Specify the size of each inode in bytes.
|
|
The
|
|
<I>inode-size</I>
|
|
|
|
value must be a power of 2 larger or equal to 128. The larger the
|
|
<I>inode-size</I>
|
|
|
|
the more space the inode table will consume, and this reduces the usable
|
|
space in the filesystem and can also negatively impact performance.
|
|
It is not
|
|
possible to change this value after the filesystem is created.
|
|
<DT id="36"><DD>
|
|
In kernels after 2.6.10 and some
|
|
earlier vendor kernels it is possible to utilize inodes larger than
|
|
128 bytes to store
|
|
extended attributes for improved performance.
|
|
Extended attributes
|
|
stored in large inodes are not visible with older kernels, and such
|
|
filesystems will not be mountable with 2.4 kernels at all.
|
|
<DT id="37"><DD>
|
|
The default inode size is controlled by the
|
|
<B><A HREF="/cgi-bin/man/man2html?5+mke2fs.conf">mke2fs.conf</A></B>(5)
|
|
|
|
file. In the
|
|
<B>mke2fs.conf</B>
|
|
|
|
file shipped with e2fsprogs, the default inode size is 256 bytes for
|
|
most file systems, except for small file systems where the inode size
|
|
will be 128 bytes.
|
|
<DT id="38"><B>-j</B>
|
|
|
|
<DD>
|
|
Create the filesystem with an ext3 journal. If the
|
|
<B>-J</B>
|
|
|
|
option is not specified, the default journal parameters will be used to
|
|
create an appropriately sized journal (given the size of the filesystem)
|
|
stored within the filesystem. Note that you must be using a kernel
|
|
which has ext3 support in order to actually make use of the journal.
|
|
<DT id="39"><B>-J</B><I> journal-options</I>
|
|
|
|
<DD>
|
|
Create the ext3 journal using options specified on the command-line.
|
|
Journal options are comma
|
|
separated, and may take an argument using the equals ('=') sign.
|
|
The following journal options are supported:
|
|
<DL COMPACT><DT id="40"><DD>
|
|
<DL COMPACT>
|
|
<DT id="41"><B>size=</B><I>journal-size</I>
|
|
|
|
<DD>
|
|
Create an internal journal (i.e., stored inside the filesystem) of size
|
|
<I>journal-size</I>
|
|
|
|
megabytes.
|
|
The size of the journal must be at least 1024 filesystem blocks
|
|
(i.e., 1MB if using 1k blocks, 4MB if using 4k blocks, etc.)
|
|
and may be no more than 10,240,000 filesystem blocks or half the total
|
|
file system size (whichever is smaller)
|
|
<DT id="42"><B>location</B><I>=journal-location</I>
|
|
|
|
<DD>
|
|
Specify the location of the journal. The argument
|
|
<I>journal-location</I>
|
|
|
|
can either be specified as a block number, or if the number has a units
|
|
suffix (e.g., 'M', 'G', etc.) interpret it as the offset from the
|
|
beginning of the file system.
|
|
<DT id="43"><B>device=</B><I>external-journal</I>
|
|
|
|
<DD>
|
|
Attach the filesystem to the journal block device located on
|
|
<I>external-journal</I>.
|
|
|
|
The external
|
|
journal must already have been created using the command
|
|
<DT id="44"><DD>
|
|
<B>mke2fs -O journal_dev</B>
|
|
|
|
<I>external-journal</I>
|
|
|
|
<DT id="45"><DD>
|
|
Note that
|
|
<I>external-journal</I>
|
|
|
|
must have been created with the
|
|
same block size as the new filesystem.
|
|
In addition, while there is support for attaching
|
|
multiple filesystems to a single external journal,
|
|
the Linux kernel and
|
|
<B><A HREF="/cgi-bin/man/man2html?8+e2fsck">e2fsck</A></B>(8)
|
|
|
|
do not currently support shared external journals yet.
|
|
<DT id="46"><DD>
|
|
Instead of specifying a device name directly,
|
|
<I>external-journal</I>
|
|
|
|
can also be specified by either
|
|
<B>LABEL=</B><I>label</I>
|
|
|
|
or
|
|
<B>UUID=</B><I>UUID</I>
|
|
|
|
to locate the external journal by either the volume label or UUID
|
|
stored in the ext2 superblock at the start of the journal. Use
|
|
<B><A HREF="/cgi-bin/man/man2html?8+dumpe2fs">dumpe2fs</A></B>(8)
|
|
|
|
to display a journal device's volume label and UUID. See also the
|
|
<B>-L</B>
|
|
|
|
option of
|
|
<B><A HREF="/cgi-bin/man/man2html?8+tune2fs">tune2fs</A></B>(8).
|
|
|
|
</DL>
|
|
</DL>
|
|
|
|
<DT id="47"><DD>
|
|
Only one of the
|
|
<B>size</B> or <B>device</B>
|
|
|
|
options can be given for a filesystem.
|
|
<DT id="48"><B>-l</B><I> filename</I>
|
|
|
|
<DD>
|
|
Read the bad blocks list from
|
|
<I>filename</I>.
|
|
|
|
Note that the block numbers in the bad block list must be generated
|
|
using the same block size as used by
|
|
<B>mke2fs</B>.
|
|
|
|
As a result, the
|
|
<B>-c</B>
|
|
|
|
option to
|
|
<B>mke2fs</B>
|
|
|
|
is a much simpler and less error-prone method of checking a disk for bad
|
|
blocks before formatting it, as
|
|
<B>mke2fs</B>
|
|
|
|
will automatically pass the correct parameters to the
|
|
<B>badblocks</B>
|
|
|
|
program.
|
|
<DT id="49"><B>-L</B><I> new-volume-label</I>
|
|
|
|
<DD>
|
|
Set the volume label for the filesystem to
|
|
<I>new-volume-label</I>.
|
|
|
|
The maximum length of the
|
|
volume label is 16 bytes.
|
|
<DT id="50"><B>-m</B><I> reserved-blocks-percentage</I>
|
|
|
|
<DD>
|
|
Specify the percentage of the filesystem blocks reserved for
|
|
the super-user. This avoids fragmentation, and allows root-owned
|
|
daemons, such as
|
|
<B><A HREF="/cgi-bin/man/man2html?8+syslogd">syslogd</A></B>(8),
|
|
|
|
to continue to function correctly after non-privileged processes are
|
|
prevented from writing to the filesystem. The default percentage
|
|
is 5%.
|
|
<DT id="51"><B>-M</B><I> last-mounted-directory</I>
|
|
|
|
<DD>
|
|
Set the last mounted directory for the filesystem. This might be useful
|
|
for the sake of utilities that key off of the last mounted directory to
|
|
determine where the filesystem should be mounted.
|
|
<DT id="52"><B>-n</B>
|
|
|
|
<DD>
|
|
Causes
|
|
<B>mke2fs</B>
|
|
|
|
to not actually create a filesystem, but display what it
|
|
would do if it were to create a filesystem. This can be used to
|
|
determine the location of the backup superblocks for a particular
|
|
filesystem, so long as the
|
|
<B>mke2fs</B>
|
|
|
|
parameters that were passed when the
|
|
filesystem was originally created are used again. (With the
|
|
<B>-n</B>
|
|
|
|
option added, of course!)
|
|
<DT id="53"><B>-N</B><I> number-of-inodes</I>
|
|
|
|
<DD>
|
|
Overrides the default calculation of the number of inodes that should be
|
|
reserved for the filesystem (which is based on the number of blocks and
|
|
the
|
|
<I>bytes-per-inode</I>
|
|
|
|
ratio). This allows the user to specify the number
|
|
of desired inodes directly.
|
|
<DT id="54"><B>-o</B><I> creator-os</I>
|
|
|
|
<DD>
|
|
Overrides the default value of the "creator operating system" field of the
|
|
filesystem. The creator field is set by default to the name of the OS the
|
|
<B>mke2fs</B>
|
|
|
|
executable was compiled for.
|
|
<DT id="55"><B>-O </B>[^]<I>feature</I>[,...]
|
|
|
|
<DD>
|
|
Create a filesystem with the given features (filesystem options),
|
|
overriding the default filesystem options. The features that are
|
|
enabled by default are specified by the
|
|
<I>base_features</I>
|
|
|
|
relation, either in the
|
|
<I>[defaults]</I>
|
|
|
|
section in the
|
|
<B>/etc/mke2fs.conf</B>
|
|
|
|
configuration file,
|
|
or in the
|
|
<I>[fs_types]</I>
|
|
|
|
subsections for the usage types as specified by the
|
|
<B>-T</B>
|
|
|
|
option, further modified by the
|
|
<I>features</I>
|
|
|
|
relation found in the
|
|
<I>[fs_types]</I>
|
|
|
|
subsections for the filesystem and usage types. See the
|
|
<B><A HREF="/cgi-bin/man/man2html?5+mke2fs.conf">mke2fs.conf</A></B>(5)
|
|
|
|
manual page for more details.
|
|
The filesystem type-specific configuration setting found in the
|
|
<I>[fs_types]</I>
|
|
|
|
section will override the global default found in
|
|
<I>[defaults]</I>.
|
|
|
|
<P>
|
|
The filesystem feature set will be further edited
|
|
using either the feature set specified by this option,
|
|
or if this option is not given, by the
|
|
<I>default_features</I>
|
|
|
|
relation for the filesystem type being created, or in the
|
|
<I>[defaults]</I>
|
|
|
|
section of the configuration file.
|
|
<P>
|
|
The filesystem feature set is comprised of a list of features, separated
|
|
by commas, that are to be enabled. To disable a feature, simply
|
|
prefix the feature name with a caret ('^') character.
|
|
Features with dependencies will not be removed successfully.
|
|
The pseudo-filesystem feature "none" will clear all filesystem features.
|
|
<DT id="56">For more information about the features which can be set, please see<DD>
|
|
the manual page
|
|
<B><A HREF="/cgi-bin/man/man2html?5+ext4">ext4</A></B>(5).
|
|
|
|
<DT id="57"><B>-q</B>
|
|
|
|
<DD>
|
|
Quiet execution. Useful if
|
|
<B>mke2fs</B>
|
|
|
|
is run in a script.
|
|
<DT id="58"><B>-r</B><I> revision</I>
|
|
|
|
<DD>
|
|
Set the filesystem revision for the new filesystem. Note that 1.2
|
|
kernels only support revision 0 filesystems. The default is to
|
|
create revision 1 filesystems.
|
|
<DT id="59"><B>-S</B>
|
|
|
|
<DD>
|
|
Write superblock and group descriptors only. This is an extreme
|
|
measure to be taken only in the very unlikely case that all of
|
|
the superblock and backup superblocks are corrupted, and a last-ditch
|
|
recovery method is desired by experienced users. It causes
|
|
<B>mke2fs</B>
|
|
|
|
to reinitialize the superblock and group descriptors, while not
|
|
touching the inode table and the block and inode bitmaps. The
|
|
<B>e2fsck</B>
|
|
|
|
program should be run immediately after this option is used, and there
|
|
is no guarantee that any data will be salvageable. Due to the wide
|
|
variety of possible options to
|
|
<B>mke2fs</B>
|
|
|
|
that affect the on-disk layout, it is critical to specify exactly
|
|
the same format options, such as blocksize, fs-type, feature flags, and
|
|
other tunables when using this option, or the filesystem will be further
|
|
corrupted. In some cases, such as filesystems that have been resized,
|
|
or have had features enabled after format time, it is impossible to
|
|
overwrite all of the superblocks correctly, and at least some filesystem
|
|
corruption will occur. It is best to run this on a full copy of the
|
|
filesystem so other options can be tried if this doesn't work.
|
|
|
|
|
|
|
|
|
|
<DT id="60"><B>-t</B><I> fs-type</I>
|
|
|
|
<DD>
|
|
Specify the filesystem type (i.e., ext2, ext3, ext4, etc.) that is
|
|
to be created.
|
|
If this option is not specified,
|
|
<B>mke2fs</B>
|
|
|
|
will pick a default either via how
|
|
the command was run (for example, using a name of the form mkfs.ext2,
|
|
mkfs.ext3, etc.) or via a default as defined by the
|
|
<B>/etc/mke2fs.conf</B>
|
|
|
|
file. This option controls which filesystem options are used by
|
|
default, based on the
|
|
<B>fstypes</B>
|
|
|
|
configuration stanza in
|
|
<B>/etc/mke2fs.conf</B>.
|
|
|
|
<P>
|
|
If the
|
|
<B>-O</B>
|
|
|
|
option is used to explicitly add or remove filesystem options that
|
|
should be set in the newly created filesystem, the
|
|
resulting filesystem may not be supported by the requested
|
|
<I>fs-type</I>.
|
|
|
|
(e.g., "<B>mke2fs -t ext3 -O extent /dev/sdXX</B>" will create a
|
|
filesystem that is not supported by the ext3 implementation as found in
|
|
the Linux kernel; and "<B>mke2fs -t ext3 -O ^has_journal /dev/hdXX</B>"
|
|
will create a filesystem that does not have a journal and hence will not
|
|
be supported by the ext3 filesystem code in the Linux kernel.)
|
|
<DT id="61"><B>-T</B><I> usage-type[,...]</I>
|
|
|
|
<DD>
|
|
Specify how the filesystem is going to be used, so that
|
|
<B>mke2fs</B>
|
|
|
|
can choose optimal filesystem parameters for that use. The usage
|
|
types that are supported are defined in the configuration file
|
|
<B>/etc/mke2fs.conf</B>.
|
|
|
|
The user may specify one or more usage types
|
|
using a comma separated list.
|
|
<P>
|
|
If this option is is not specified,
|
|
<B>mke2fs</B>
|
|
|
|
will pick a single default usage type based on the size of the filesystem to
|
|
be created. If the filesystem size is less than 3 megabytes,
|
|
<B>mke2fs</B>
|
|
|
|
will use the filesystem type
|
|
<I>floppy</I>.
|
|
|
|
If the filesystem size is greater than or equal to 3 but less than
|
|
512 megabytes,
|
|
<B><A HREF="/cgi-bin/man/man2html?8+mke2fs">mke2fs</A></B>(8)
|
|
|
|
will use the filesystem type
|
|
<I>small</I>.
|
|
|
|
If the filesystem size is greater than or equal to 4 terabytes but less than
|
|
16 terabytes,
|
|
<B><A HREF="/cgi-bin/man/man2html?8+mke2fs">mke2fs</A></B>(8)
|
|
|
|
will use the filesystem type
|
|
<I>big</I>.
|
|
|
|
If the filesystem size is greater than or equal to 16 terabytes,
|
|
<B><A HREF="/cgi-bin/man/man2html?8+mke2fs">mke2fs</A></B>(8)
|
|
|
|
will use the filesystem type
|
|
<I>huge</I>.
|
|
|
|
Otherwise,
|
|
<B><A HREF="/cgi-bin/man/man2html?8+mke2fs">mke2fs</A></B>(8)
|
|
|
|
will use the default filesystem type
|
|
<I>default</I>.
|
|
|
|
<DT id="62"><B>-U</B><I> UUID</I>
|
|
|
|
<DD>
|
|
Set the universally unique identifier (UUID) of the filesystem to
|
|
<I>UUID</I>.
|
|
|
|
The format of the UUID is a series of hex digits separated by hyphens,
|
|
like this:
|
|
"c1b9d5a2-f162-11cf-9ece-0020afc76f16".
|
|
The
|
|
<I>UUID</I>
|
|
|
|
parameter may also be one of the following:
|
|
<DL COMPACT><DT id="63"><DD>
|
|
<DL COMPACT>
|
|
<DT id="64"><I>clear</I>
|
|
|
|
<DD>
|
|
clear the filesystem UUID
|
|
<DT id="65"><I>random</I>
|
|
|
|
<DD>
|
|
generate a new randomly-generated UUID
|
|
<DT id="66"><I>time</I>
|
|
|
|
<DD>
|
|
generate a new time-based UUID
|
|
</DL>
|
|
</DL>
|
|
|
|
<DT id="67"><B>-v</B>
|
|
|
|
<DD>
|
|
Verbose execution.
|
|
<DT id="68"><B>-V</B>
|
|
|
|
<DD>
|
|
Print the version number of
|
|
<B>mke2fs</B>
|
|
|
|
and exit.
|
|
<DT id="69"><B>-z</B><I> undo_file</I>
|
|
|
|
<DD>
|
|
Before overwriting a file system block, write the old contents of the block to
|
|
an undo file. This undo file can be used with <A HREF="/cgi-bin/man/man2html?8+e2undo">e2undo</A>(8) to restore the old
|
|
contents of the file system should something go wrong. If the empty string is
|
|
passed as the undo_file argument, the undo file will be written to a file named
|
|
mke2fs-<I>device</I>.e2undo in the directory specified via the
|
|
<I>E2FSPROGS_UNDO_DIR</I> environment variable or the <I>undo_dir</I> directive
|
|
in the configuration file.
|
|
<P>
|
|
WARNING: The undo file cannot be used to recover from a power or system crash.
|
|
</DL>
|
|
<A NAME="lbAF"> </A>
|
|
<H2>ENVIRONMENT</H2>
|
|
|
|
<DL COMPACT>
|
|
<DT id="70"><B>MKE2FS_SYNC</B>
|
|
|
|
<DD>
|
|
If set to non-zero integer value, its value is used to determine how often
|
|
<B><A HREF="/cgi-bin/man/man2html?2+sync">sync</A></B>(2)
|
|
|
|
is called during inode table initialization.
|
|
<DT id="71"><B>MKE2FS_CONFIG</B>
|
|
|
|
<DD>
|
|
Determines the location of the configuration file (see
|
|
<B><A HREF="/cgi-bin/man/man2html?5+mke2fs.conf">mke2fs.conf</A></B>(5)).
|
|
|
|
<DT id="72"><B>MKE2FS_FIRST_META_BG</B>
|
|
|
|
<DD>
|
|
If set to non-zero integer value, its value is used to determine first meta
|
|
block group. This is mostly for debugging purposes.
|
|
<DT id="73"><B>MKE2FS_DEVICE_SECTSIZE</B>
|
|
|
|
<DD>
|
|
If set to non-zero integer value, its value is used to determine logical
|
|
sector size of the
|
|
<I>device</I>.
|
|
|
|
<DT id="74"><B>MKE2FS_DEVICE_PHYS_SECTSIZE</B>
|
|
|
|
<DD>
|
|
If set to non-zero integer value, its value is used to determine physical
|
|
sector size of the
|
|
<I>device</I>.
|
|
|
|
<DT id="75"><B>MKE2FS_SKIP_CHECK_MSG</B>
|
|
|
|
<DD>
|
|
If set, do not show the message of filesystem automatic check caused by
|
|
mount count or check interval.
|
|
</DL>
|
|
<A NAME="lbAG"> </A>
|
|
<H2>AUTHOR</H2>
|
|
|
|
This version of
|
|
<B>mke2fs</B>
|
|
|
|
has been written by Theodore Ts'o <<A HREF="mailto:tytso@mit.edu">tytso@mit.edu</A>>.
|
|
<A NAME="lbAH"> </A>
|
|
<H2>AVAILABILITY</H2>
|
|
|
|
<B>mke2fs</B>
|
|
|
|
is part of the e2fsprogs package and is available from
|
|
<A HREF="http://e2fsprogs.sourceforge.net.">http://e2fsprogs.sourceforge.net.</A>
|
|
<A NAME="lbAI"> </A>
|
|
<H2>SEE ALSO</H2>
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?5+mke2fs.conf">mke2fs.conf</A></B>(5),
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?8+badblocks">badblocks</A></B>(8),
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?8+dumpe2fs">dumpe2fs</A></B>(8),
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?8+e2fsck">e2fsck</A></B>(8),
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?8+tune2fs">tune2fs</A></B>(8),
|
|
|
|
<B><A HREF="/cgi-bin/man/man2html?5+ext4">ext4</A></B>(5)
|
|
|
|
<P>
|
|
|
|
<HR>
|
|
<A NAME="index"> </A><H2>Index</H2>
|
|
<DL>
|
|
<DT id="76"><A HREF="#lbAB">NAME</A><DD>
|
|
<DT id="77"><A HREF="#lbAC">SYNOPSIS</A><DD>
|
|
<DT id="78"><A HREF="#lbAD">DESCRIPTION</A><DD>
|
|
<DT id="79"><A HREF="#lbAE">OPTIONS</A><DD>
|
|
<DT id="80"><A HREF="#lbAF">ENVIRONMENT</A><DD>
|
|
<DT id="81"><A HREF="#lbAG">AUTHOR</A><DD>
|
|
<DT id="82"><A HREF="#lbAH">AVAILABILITY</A><DD>
|
|
<DT id="83"><A HREF="#lbAI">SEE ALSO</A><DD>
|
|
</DL>
|
|
<HR>
|
|
This document was created by
|
|
<A HREF="/cgi-bin/man/man2html">man2html</A>,
|
|
using the manual pages.<BR>
|
|
Time: 00:06:13 GMT, March 31, 2021
|
|
</BODY>
|
|
</HTML>
|