btrfs-progs/man/mkfs.btrfs.8.in
Koen De Wit b9b1fc4f0d btrfs-progs: mkfs.btrfs documentation: clarify current restrictions of sectorsize, nodesize and leafsize
Commit 8d082fb727ac11930ea20bf1612e334ea7c2b697 (Btrfs: do not mount when
we have a sectorsize unequal to PAGE_SIZE) requires the sectorsize to be
equal to the pagesize for the filesystem to be mountable.

The nodesize and leafsize should be equal, and not larger than 65536.

Adding this information to the manpage and usage instructions of mkfs.btrfs.

Signed-off-by: Koen De Wit <koen.de.wit@oracle.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
2013-09-03 19:40:49 +02:00

106 lines
3.9 KiB
Groff

.TH MKFS.BTRFS 8
.SH NAME
mkfs.btrfs \- create a btrfs filesystem
.SH SYNOPSIS
.B mkfs.btrfs
[ \fB\-A\fP\fI alloc-start\fP ]
[ \fB\-b\fP\fI byte-count\fP ]
[ \fB\-d\fP\fI data-profile\fP ]
[ \fB\-f\fP ]
[ \fB\-n\fP\fI nodesize\fP ]
[ \fB\-l\fP\fI leafsize\fP ]
[ \fB\-L\fP\fI label\fP ]
[ \fB\-m\fP\fI metadata profile\fP ]
[ \fB\-M\fP\fI mixed data+metadata\fP ]
[ \fB\-s\fP\fI sectorsize\fP ]
[ \fB\-r\fP\fI rootdir\fP ]
[ \fB\-K\fP ]
[ \fB\-O\fP\fI feature1,feature2,...\fP ]
[ \fB\-h\fP ]
[ \fB\-V\fP ]
\fI device\fP [ \fIdevice ...\fP ]
.SH DESCRIPTION
.B mkfs.btrfs
is used to create a btrfs filesystem (usually in a disk partition, or an array
of disk partitions).
.I device
is the special file corresponding to the device (e.g \fI/dev/sdXX\fP ).
If multiple \fI devices \fP are specified, btrfs is created
spanning across the specified \fI devices\fP.
.SH OPTIONS
.TP
\fB\-A\fR, \fB\-\-alloc\-start \fIoffset\fR
Specify the offset from the start of the device to start the btrfs filesystem. The default value is zero, or the start of the device.
.TP
\fB\-b\fR, \fB\-\-byte\-count \fIsize\fR
Specify the size of the resultant filesystem. If this option is not used,
mkfs.btrfs uses all the available storage for the filesystem.
.TP
\fB\-d\fR, \fB\-\-data \fItype\fR
Specify how the data must be spanned across the devices specified. Valid
values are raid0, raid1, raid5, raid6, raid10 or single.
.TP
\fB\-f\fR, \fB\-\-force\fR
Force overwrite when an existing filesystem is detected on the device.
By default, mkfs.btrfs will not write to the device if it suspects that
there is a filesystem or partition table on the device already.
.TP
\fB\-n\fR, \fB\-\-nodesize \fIsize\fR
\fB\-l\fR, \fB\-\-leafsize \fIsize\fR
Specify the nodesize, the tree block size in which btrfs stores data. The
default value is the page size. Must be a multiple of the sectorsize, but
not larger than 65536. Leafsize always equals nodesize and the options are
aliases.
.TP
\fB\-L\fR, \fB\-\-label \fIname\fR
Specify a label for the filesystem.
.TP
\fB\-m\fR, \fB\-\-metadata \fIprofile\fR
Specify how metadata must be spanned across the devices specified. Valid
values are raid0, raid1, raid5, raid6, raid10, single or dup. Single device
will have dup set by default except in the case of SSDs which will default to
single. This is because SSDs can remap blocks internally so duplicate blocks
could end up in the same erase block which negates the benefits of doing
metadata duplication.
.TP
\fB\-M\fR, \fB\-\-mixed\fR
Mix data and metadata chunks together for more efficient space
utilization. This feature incurs a performance penalty in
larger filesystems. It is recommended for use with filesystems
of 1 GiB or smaller.
.TP
\fB\-s\fR, \fB\-\-sectorsize \fIsize\fR
Specify the sectorsize, the minimum data block allocation unit. The default
value is the page size. If the sectorsize differs from the page size, the
created filesystem may not be mountable by current kernel. Therefore it is not
recommended to use this option unless you are going to mount it on a system
with the appropriate page size.
.TP
\fB\-r\fR, \fB\-\-rootdir \fIrootdir\fR
Specify a directory to copy into the newly created fs.
.TP
\fB\-K\fR, \fB\-\-nodiscard \fR
Do not perform whole device TRIM operation by default.
.TP
\fB\-O\fR, \fB\-\-features \fIfeature1,feature2,...\fR
A list of filesystem features turned on at mkfs time. Not all features are
supported by old kernels.
To see all run
\fBmkfs.btrfs -O list-all\fR
.TP
\fB\-V\fR, \fB\-\-version\fR
Print the \fBmkfs.btrfs\fP version and exit.
.SH UNIT
As default the unit is the byte, however it is possible to append a suffix
to the arguments like \fBk\fP for KBytes, \fBm\fP for MBytes...
.SH AVAILABILITY
.B mkfs.btrfs
is part of btrfs-progs. Btrfs is currently under heavy development,
and not suitable for any uses other than benchmarking and review.
Please refer to the btrfs wiki
http://btrfs.wiki.kernel.org for further details.
.SH SEE ALSO
.BR btrfsck (8)