If you encounter a situation where a Btrfs volume is out of space,
However, you have to accept that Btrfs is a “strange” filesystem. So if you’re doing things that would help with other filesystems, it might NOT help with btrfs. If you want to know why, check out the wiki
sudo btrfs filesystem usage /
If the Unallocated size is less than 10GB, it may cause problems.
Please follow the steps mentioned in the wiki under “Solving problems”.
If the free size is below 10GB, you need to delete something to free up space.
sudo btrfs subvolume list / | grep 'timeshift-btrfs'
All timeshift snapshots that you actually have are displayed here.
Please select some of the oldest. Then delete them.
You need to mount them before you can delete some.
sudo btrfs filesystem show | grep -C2 '/dev/.*'
The name of the device is marked red. Now you need to mount it
sudo mount -t btrfs -o subvol=/ /dev/???? /mnt mount -t btrfs
And when it is mounted,
sudo btrfs subvolume delete -C /mnt/timeshift-btrfs/snapshots/2023-06-13_17-16-41/@
sudo btrfs filesystem usage /mnt
Note, however, that Btrfs may take some time to free up some of the now unused disk space. This can take a few minutes !!!
But please only do what is necessary. The first step may be sufficient in your situation. Btrfs tells you how many blocks have been moved.
sudo btrfs balance start -musage=50 -dusage=50 / sudo btrfs balance start -musage=75 -dusage=75 / sudo btrfs balance start -musage=85 -dusage=85 / sudo btrfs balance start -musage=95 -dusage=95 /