The btrfs utility is a toolbox for managing btrfs filesystems. There are command groups to work with subvolumes, devices, for whole filesystem or other specific actions. See section COMMANDS.
There are also standalone tools for some tasks like btrfs-convert or btrfstune that were separate historically and/or haven't been merged to the main utility. See section STANDALONE TOOLS for more details.
For other topics (mount options, etc) please refer to the separate manual page btrfs(5).
Any command name can be shortened so long as the shortened form is unambiguous, however, it is recommended to use full command names in scripts. All command groups have their manual page named btrfs-<group>.
For example: it is possible to run btrfs sub snaps instead of btrfs subvolume snapshot. But btrfs file s is not allowed, because file s may be interpreted both as filesystem show and as filesystem sync.
If the command name is ambiguous, the list of conflicting options is printed.
For an overview of a given command use btrfs command --help or btrfs [command...] --help --full to print all available options.
balance
See btrfs-balance(8) for details.
check
See btrfs-check(8) for details.
device
See btrfs-device(8) for details.
filesystem
See btrfs-filesystem(8) for details.
inspect-internal
See btrfs-inspect-internal(8) for details.
property
See btrfs-property(8) for details.
qgroup
See btrfs-qgroup(8) for details.
quota
See btrfs-quota(8) and btrfs-qgroup(8) for details.
receive
See btrfs-receive(8) for details.
replace
See btrfs-replace(8) for details.
rescue
See btrfs-rescue(8) for details.
restore
See btrfs-restore(8) for details.
scrub
See btrfs-scrub(8) for details.
send
See btrfs-send(8) for details.
subvolume
See btrfs-subvolume(8) for details.
New functionality could be provided using a standalone tool. If the functionality proves to be useful, then the standalone tool is declared obsolete and its functionality is copied to the main tool. Obsolete tools are removed after a long (years) depreciation period.
Tools that are still in active use without an equivalent in btrfs:
btrfs-convert
btrfstune
btrfs-select-super
btrfs-find-root
Deprecated and obsolete tools:
btrfs-debug-tree
btrfs-show-super
btrfs-zero-log
For space-constrained environments, it's possible to build a single binary with functionality of several standalone tools. This is following the concept of busybox where the file name selects the functionality. This works for symlinks or hardlinks. The full list can be obtained by btrfs help --box.
btrfs returns a zero exit status if it succeeds. Non zero is returned in case of failure.
btrfs is part of btrfs-progs. Please refer to the btrfs wiki m[blue]http://btrfs.wiki.kernel.orgm[] for further details.
btrfs(5), btrfs-balance(8), btrfs-check(8), btrfs-convert(8), btrfs-device(8), btrfs-filesystem(8), btrfs-inspect-internal(8), btrfs-property(8), btrfs-qgroup(8), btrfs-quota(8), btrfs-receive(8), btrfs-replace(8), btrfs-rescue(8), btrfs-restore(8), btrfs-scrub(8), btrfs-send(8), btrfs-subvolume(8), btrfstune(8), mkfs.btrfs(8)