btrfs-balance
TLDR
Show status
$ sudo btrfs balance status path/to/filesystem
Start full balance$ sudo btrfs balance start path/to/filesystem
Balance underused data chunks$ sudo btrfs balance start --bg -dusage=15 path/to/filesystem
Balance metadata with limits$ sudo btrfs balance start -musage=20,limit=10 path/to/filesystem
Convert RAID profile$ sudo btrfs balance start -dconvert=raid6 -mconvert=raid1c3 path/to/filesystem
Cancel/pause/resume$ sudo btrfs balance cancel path/to/filesystem
SYNOPSIS
btrfs balance command [OPTIONS] path
DESCRIPTION
btrfs balance redistributes data across devices in a btrfs filesystem. It can rebalance data, convert between RAID profiles, and relocate chunks from specific devices.
PARAMETERS
start
Start a balance operationstatus
Show status of running or paused balancecancel
Cancel a running balancepause
Pause a running balanceresume
Resume a paused balance-d filters
Apply filters to data block groups-m filters
Apply filters to metadata block groups-s filters
Apply filters to system block groups--bg, --background
Run in backgroundusage= percent
Balance chunks with usage below percentagelimit= count
Process at most this many chunksconvert= profile
Convert to specified RAID profilesoft
Skip chunks already matching the target profile
CAVEATS
A full balance rewrites all data and is very slow. Use filters to target only necessary chunks. Balance requires free space to relocate data. Converting RAID profiles on a busy system may take a long time.
HISTORY
btrfs balance is part of the btrfs-progs package for managing btrfs filesystems on Linux.
SEE ALSO
btrfs(8), btrfs-device(8), mkfs.btrfs(8)


