Hi, I want to do an “awesome things” list with BTRFS tools
Help me gather them?
General
BTRFS CLI Interface
btrfs-progs official userpace utilities
BTRFS Assistant
Tool for doing many BTRFS actions graphically
It requires snapper
and offers a GUI for it.
butter-manager
Tool for managing snapshots, balancing filesystems and upgrading the system safetly.
Backups & Snapshots
btrbk
Backup utility using BTRFS
Snapper
General system snapshot utility with BTRFS support, used in OpenSUSE Tumbleweed by default. There are also plugins for Fedoras dnf and for Arch pacman.
Timeshift
System restore tool for Linux. Creates filesystem snapshots using rsync+hardlinks, or BTRFS snapshots. Supports scheduled snapshots, multiple backup levels, and exclude filters. Snapshots can be restored while system is running or from Live CD/USB.
- ArchWiki
- Debian Wiki
- thelinuxcode
- linuxconfig
- Mir Rahed Uddin’s Guide
- Its FOSS Guide
- [DE] Linuxcommunity Guide
Small CLI tools
dupreremove
Tools for deduplicating file systems
compsize
takes a list of files on a btrfs filesystem and measures used compression types and effective compression ratio
Used in flatpak-dedup-checker
btdu
sampling disk usage profiler for btrfs
For multiple reasons, classic disk usage analyzers such as ncdu
cannot provide an accurate depiction of actual disk usage. (btrfs compression in particular is challenging to classic analyzers, and special tools must be used to query compressed usage.)
btrfs-list
Helps listing directories
Partition managers with support
- kde-partitionamanger
- gnome-disks?
- blivet-gui (Fedora Anaconda setup) ?
- gparted?
Data recovery
When having deleted or corrupted data on a BTRFS partition, these tools can help:
Testdisk?
- photorec?
scalpel?
R-Linux
Freeware, not FOSS? Not related to R and “R-Studio” is also not related to RStudio
I never used BTRFS at all. At the moment I do not feel comfortable using BTRFS yet and wait until its proven over long time and ironed out even the weirdest edge cases.
Edit: Don’t misunderstand me. I know its relative stable now, but reading here and there about the problems makes me very uncomfortable to switch from the battle tested EXT4. I really like its features and evaluated last year to use BTRFS as my system drive. Ultimately decided against it for now. I plan on using it, and clicked this post for this reason, to learn more about it.
Maintaining btrfs is more work than maintaining ext4, which basically doesn’t need any. I.e. running btrfs scrub is important to keep performance up. Monthly scrubs are good because they don’t take as long if done regularly.
Btrfs balance can free up some space, but otherwise isn’t important on SSDs.
I think BTRFS is especially problematic on Fedora Atomic desktops.
Afaik the OSTree snapshots use BTRFS deduplication, also the zstd compression helps reduce storage usage and increase SSD use.
But as the entire system partitions are read only, you cant balance, scrub etc them.
This is a big issue I think, I will open a Fedora Discussion post about this.
https://discussion.fedoraproject.org/t/119216
Interesting, I didn’t know OSTree takes advantage of BTRFS features.
On my current system I use ext4 instead of btrfs which I regret specifically because of the missing transparent compression and reflink copy.
[1] https://ostreedev.github.io/ostree/introduction/
I also tried an install with LVM and F2FS instead of the default EXT4. It works, and F2FS is faster in theory, but I only found 2 bigger benchmarks. The older one said BTRFS is waaay slower, a newer one with exact reproducability details said it is equal.
And yes I suppose that rpm-ostree utilizes the BTRFS CoW, deduplication and compression which all help reducing disk usage.
But I dont know that.