I have a BTRFS Raid 1, with the following btrfs fi show
:
Total devices 4 FS bytes used 1.45TiB
devid 7 size 698.64GiB used 694.15GiB path /dev/bcache32
devid 9 size 931.51GiB used 928.51GiB path /dev/bcache0
devid 10 size 698.64GiB used 694.64GiB path /dev/bcache48
devid 11 size 1.82TiB used 697.00GiB path /dev/bcache16
From here, you can see that the three smaller devices are almost full (in fact, they were completely full just a while ago, giving me ENOSPC
errors). However, the larger 2TB HDD is mostly empty.
The volume is "full" because any data added to the 2 TB disk must also be mirrored on the other disks, but they're all full. Ideally, I'd be able to move copies from the smaller disks to the 2 TB disk so I'd have room to add more data later.
A full btrfs balance
seems to juggle the data around but doesn't actually make significant changes to the allocation proportions.
How can I fix this?
ENOSPC
. Ideally, I'd move some of the copies from the smaller disks to to the larger one so the distribution would be less skewed.btrfs resize
, but at a given point BTRFS just refuses to put the relocated blocks on the larger device, for some reason.