Commit graph

157 commits

Author SHA1 Message Date
Qu Wenruo c328e0db4a btrfs-progs: show-super: Add option to print superblock at given bytenr
Add '-s <sb_bytenr>' option to show superblock at given bytenr.

This is very useful to debug non-standard btrfs, like debuging the
1st stage btrfs of btrfs-convert.

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
[ minor updates in docs ]
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 15:45:52 +01:00
David Sterba b1c222321e btrfs-progs: docs: enhance manual page for inspect-internal
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 15:10:16 +01:00
David Sterba 26d6392f70 btrfs-progs: docs: enhance the manual page for convert
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 15:10:15 +01:00
David Sterba bfb2659d12 btrfs-progs: docs: enhance manual page for balance
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 15:10:15 +01:00
David Sterba b44e84a650 btrfs-progs: docs: enhance manual page for btrfstune
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 15:10:15 +01:00
David Sterba a2d66e0962 btrfs-progs: docs: enhance manual page for mkfs
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 15:10:15 +01:00
Chandan Rajendra c11e36a29e Btrfs-progs: Do not force mixed block group creation unless '-M' option is specified
When creating small Btrfs filesystem instances (i.e. filesystem size <= 1GiB),
mkfs.btrfs fails if both sectorsize and nodesize are specified on the command
line and sectorsize != nodesize, since mixed block groups involves both data
and metadata blocks sharing the same block group. This is an incorrect behavior
when '-M' option isn't specified on the command line.

This commit makes optional the creation of mixed block groups i.e. Mixed block
groups are created only when -M option is specified on the command line.

Since we now allow small filesystem instances with sectorsize != nodesize to
be created, we can end up in the following situation,

[root@localhost ~]# mkfs.btrfs -f -n 65536 /dev/loop0
btrfs-progs v3.19-rc2-405-g976307c
See http://btrfs.wiki.kernel.org for more information.

Performing full device TRIM (512.00MiB) ...
Label:              (null)
UUID:               49fab72e-0c8b-466b-a3ca-d1bfe56475f0
Node size:          65536
Sector size:        4096
Filesystem size:    512.00MiB
Block group profiles:
  Data:             single            8.00MiB
  Metadata:         DUP              40.00MiB
  System:           DUP              12.00MiB
SSD detected:       no
Incompat features:  extref, skinny-metadata
Number of devices:  1
Devices:
   ID        SIZE  PATH
    1   512.00MiB  /dev/loop0
[root@localhost ~]# mount /dev/loop0 /mnt/
mount: mount /dev/loop0 on /mnt failed: No space left on device

The ENOSPC occurs during the creation of the UUID tree. This is because of
things like large metadata block size, DUP mode used for metadata and global
reservation consuming space. Also, large nodesize does not make sense on small
filesystems, hence this should not be an issue.

Signed-off-by: Chandan Rajendra <chandan@linux.vnet.ibm.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 09:35:04 +01:00
David Sterba 4ee3d2e94d btrfs-progs: docs: add html build target
We can easily build the documentation in html format:

 $ make html

in the Documentation directory.

Signed-off-by: David Sterba <dsterba@suse.com>
2015-11-02 09:35:00 +01:00
Silvio Fricke 90b63ba242 btrfs-progs: check: add progress indicator
Signed-off-by: Silvio Fricke <silvio.fricke@gmail.com>
[minor updates]
Signed-off-by: David Sterba <dsterba@suse.com>
2015-10-21 14:29:26 +02:00
David Sterba 1e6f194075 btrfs-progs: docs: add option variants, defaults and versions to mount options
Signed-off-by: David Sterba <dsterba@suse.com>
2015-09-15 00:40:00 +02:00
Adam Borowski 13be89d82e btrfs-progs: doc: document btrfs-select-super(8)
Signed-off-by: Adam Borowski <kilobyte@angband.pl>
Signed-off-by: David Sterba <dsterba@suse.com>
2015-09-02 18:56:54 +02:00
David Sterba c78f3eea94 btrfs-progs: doc: update qgroup docs
Signed-off-by: David Sterba <dsterba@suse.com>
2015-08-31 19:25:11 +02:00
David Sterba e5a6610c94 btrfs-progs: qgroup assign: add option to schedule rescan
Previous patch detecs inconsistency and unconditionally triggers quota
rescan. This may not be always desired as it's a heavy metadata
operation. In case of batch assignments it's better to trigger the
rescan at the end.

Signed-off-by: David Sterba <dsterba@suse.com>
2015-08-31 19:25:11 +02:00
David Sterba 5b1c5b8878 btrfs-progs: inspect: add command min-dev-size
Previously in 'filesystem resize get_min_size', now
'inspect-internal min-dev-size'. We'd like to avoid cluttering the
'resize' syntax further.

The test has been updated to exercise the new option.

Signed-off-by: David Sterba <dsterba@suse.com>
2015-08-31 19:25:08 +02:00
Filipe Manana a57606e815 Btrfs-progs: add feature to get mininum size for resizing a fs/device
Currently there is not way for a user to know what is the minimum size a
device of a btrfs filesystem can be resized to. Sometimes the value of
total allocated space (sum of all allocated chunks/device extents), which
can be parsed from 'btrfs filesystem show' and 'btrfs filesystem usage',
works as the minimum size, but sometimes it does not, namely when device
extents have to relocated to holes (unallocated space) within the new
size of the device (the total allocated space sum).

This change adds the ability to reliably compute such minimum value and
extents 'btrfs filesystem resize' with the following syntax to get such
value:

   btrfs filesystem resize [devid:]get_min_size

Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2015-08-31 19:25:03 +02:00
Wang Yanfeng 032f79d25b Documentation: update btrfs-replace manual to support RAID5/6
Man manual need to be updated since RAID5/6 has been supported
by btrfs-replace.

Signed-off-by: Wang Yanfeng <wangyf-fnst@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2015-07-14 17:25:27 +02:00
Tsutomu Itoh cc68c4f9af btrfs-progs: doc: fix short explanation of restore in btrfs
Short explanation of restore is wrong. Fix it.

Signed-off-by: Tsutomu Itoh <t-itoh@jp.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2015-07-01 15:28:14 +02:00
Omar Sandoval f802f572b1 btrfs-progs: alias btrfs device delete to btrfs device remove
There's an awkward asymmetry between btrfs device add and btrfs device
delete. Resolve this by aliasing delete to remove.

Signed-off-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-26 16:33:39 +02:00
David Sterba b681e2536e btrfs-progs: doc: update defrag page
- update wording for -t
- add optional argument to -c

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-26 16:23:00 +02:00
Adam Borowski ce63aed165 btrfs-progs: doc: mkfs.btrfs: document -O^
Signed-off-by: Adam Borowski <kilobyte@angband.pl>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-25 19:28:49 +02:00
Qu Wenruo 81225f11d9 btrfs-progs: docs: new size options for fi show
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-22 16:45:06 +02:00
David Sterba c55415e4cb btrfs-progs: send: add option to for the no-data mode
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-12 16:44:47 +02:00
David Sterba c9f885ec89 btrfs-progs: subvol: let sync check only current deletions
So far the subvol sync command takes a shortcut and looks if there are
any deleted subvols at all. It does not print the deleted subvolumes as
they get cleaned. Arguably this is what the user would like to see and
has to do

 $ btrfs subvol sync /path $(btrfs subvol list -d /path | "extract the ids")

to see the progress.

Make it look for all currently deleted subvolumes automatically and
print the progress as if the ids were listed manually.

This is a slight change in the semantics of the command. Previously, any
new subvol deletion would prevent subvol sync to return. To simulate the
old behaviour, run 'subvol sync' in a loop until it returns 0.

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-09 18:18:19 +02:00
David Sterba d34f9faf60 btrfs-progs: mkfs: add option to make it quiet
Add option to silecne mkfs and print only errors, warnings or info on
user request like features or help.

Based on patch from Goffredo Baroncelli <kreijack@inwind.it>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-06 01:00:18 +02:00
David Sterba 4f43aaf4aa btrfs-progs: doc: update btrfs-rescue page and drop btrfs-zero-log
- fix page title
- update zero-log text
- delete btrfs-zero-log.asciidoc as page is not shipped anymore

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-04 15:56:23 +02:00
David Sterba 0721c08dff btrfs-progs: doc: update btrfstune manpage
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-03 12:52:56 +02:00
David Sterba 6a4a3acbc2 btrfs-progs: btrfstune: add option to enable NO_HOLES
New option -n to enable the NO_HOLES feature.

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-03 12:52:56 +02:00
Josef Bacik 420afa3edc btrfs-progs: specify mountpoint for recieve
In a chroot environment we may not have /proc mounted, which makes btrfs receive
freak out since it wants to know the base directory where are are mounted for
things like clone and such.  Give an option to specify where the mountpoint is
in these cases so you can still do a btrfs receive in a chroot.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fb.com>
[added manpage documentation]
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-06-02 17:35:43 +02:00
Qu Wenruo 99ad3805be btrfs-progs: Documentation: uuid change
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
[updated wodring]
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-05-26 17:21:47 +02:00
David Sterba bea9ba0acb btrfs-progs: restore: add more long option variants
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-05-14 15:41:06 +02:00
Dan Merillat bd91f80725 btrfs-progs: optionally restore symlinks.
Restore symlinks, optionally with owner/times.

Signed-off-by: Dan Merillat <dan.merillat@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-05-14 15:41:02 +02:00
David Sterba 582e156baf btrfs-progs: fix typos in restore help/doc
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-24 17:28:37 +02:00
Dan Merillat ce72ae32d2 btrfs-progs: restore: document metadata restore.
This was lost in the cleanup of 71a559

Signed-off-by: Dan Merillat <dan.merillat@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-24 17:07:34 +02:00
Lauri Võsandi 9a86668071 btrfs-progs: optionally enforce chroot for btrfs receive
This patch forces btrfs receive to issue chroot before
parsing the btrfs stream using command-line flag -C
to confine the process and minimize damage that could
be done via malicious btrfs stream.

Signed-off-by: Lauri Võsandi <lauri.vosandi@gmail.com>
[added long option variant, added docs]
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-24 15:42:05 +02:00
Anand Jain 2890c41504 btrfs-progs: fix typo in btrfs-device.txt
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-24 15:42:04 +02:00
David Sterba 49eab99172 btrfs-progs: add zero-log to rescue command
Copy the functionality of standalone btrfs-zero-log to the main tool.
Delete man page for btrfs-zero-log and copy the relevant parts into
btrfs-rescue(8).  The standalone utility will be removed later.

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-22 18:21:48 +02:00
David Sterba e57dc6c753 btrfs-progs: fi resize: accept only directories as paths
Resize of a filesystem image does not work as expected. This has been
confusing and can have bad consequences as people have reported,
resizing the wrong filesystem.

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-22 18:21:47 +02:00
David Sterba 7ffccaf0c3 btrfs-progs: Documentaion: rename to .asciidoc
A few minor benefits:

* editors set highliting according to the extensions
* web access to the git repository (github) renders the .asciidoc
  files:
  * we can link to them from the wiki
  * the files are editable via browser and such editations can be
    submitted for merge easily

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-14 17:41:27 +02:00
Qu Wenruo 96563f961c btrfs-progs: Doc: Add warning and note on btrfs-convert.
Although btrfs-convert can rollback converted btrfs, it still has some
limitation to ensure rollback.

Add a warning on the limitations.

Also add a note for users who decides to go on with btrfs and don't need
the rollback ability.

Reported-by: Vytautas D <vytdau@gmail.com>
Reported-by: Tsutomu Itoh <t-itoh@jp.fujitsu.com>
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-07 17:44:05 +02:00
Chen Hanxiao 153bbb93ec btrfs-progs doc: emphasis that only mounted device works for btrfs device stats
We provided format <path>|<device> in command line.
But btrfs device stats doesn't work if device is not mounted.

Also fix some tailing whitespace.

Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-04-02 17:26:35 +02:00
David Sterba bc400acbff btrfs-progs: convert, add long options for all short options
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-03-24 19:08:52 +01:00
Sebastian Thorarensen af25a6402c btrfs-progs: btrfs-convert: Allow setting nodesize
Allow btrfs-convert to use nodesizes other than 4096. It defaults to
max(16384, pagesize), like mkfs.

Signed-off-by: Sebastian Thorarensen <sebth@naju.se>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-03-23 16:54:50 +01:00
David Sterba 357cc1d231 btrfs-progs: convert, add option to disable progress
With progress turned on by default we should be able to disable it
as well.

Reported-by: Jérôme Poulin <jeromepoulin@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-03-09 12:06:58 +01:00
Shriramana Sharma 73362471f3 btrfs-progs: doc: clarify toplevel subvolid
Signed-off-by: Shriramana Sharma <samjnaa@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-27 17:48:08 +01:00
David Sterba ddb0ba2dad btrfs-progs: convert: show progress by default
Agreed by several people, showing progress by default makes sense as
conversion is a one-time and long running action.

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-27 16:30:05 +01:00
Stefan Tatschner 05bc145189 btrfs-progs: docs: fixed a grammar mistake
Signed-off-by: Stefan Tatschner <stefan@sevenbyte.org>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-24 15:20:57 +01:00
Qu Wenruo d91d68294c btrfs-progs: find-root, add option to search through all the metadata extents
Add option '-a' for btrfs-find-root to iterate all the metadata extents
even the root is already found.

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-11 18:34:06 +01:00
David Sterba e1f0d9d446 btrfs-progs: autoconf: detect tools to build docs
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-03 16:06:52 +01:00
David Sterba 505669320b btrfs-progs: build, fix version macro name
Autoconf changed it to PACKAGE_VERSION and moved to config.h.

Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-03 16:03:30 +01:00
David Sterba 52e65ab121 btrfs-progs: autoconf: use variable substitutions in doc makefile
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-03 16:03:28 +01:00