Btrfs
A modern copy-on-write filesystem natively supported by the Linux kernel. It supports snapshots, subvolumes, transparent compression, and multi-device management, and has been adopted as the default filesystem by several mainstream Linux distributions.
Timeline (last 90 days)
Btrfs is a copy-on-write file system on Linux whose snapshot feature can record the state of a subvolume while taking up almost no additional space, and with tools such as snapper or timeshift it enables quick rollbacks.
Omarchy works out of the box: audio, GPU acceleration, external monitors, hibernation and Btrfs snapshots all require no additional configuration.
Common ways to implement checkpoints include full copies, incremental diff storage, or leveraging filesystem snapshots (such as copy-on-write in APFS and Btrfs).
PostgreSQL's MVCC mechanism, ZFS/Btrfs filesystem snapshots, and some cloud database services use copy-on-write or similar storage tiering technology as their underlying foundation.
On Btrfs, CoW can be disabled for database files using chattr +C; on ZFS, reducing the recordsize to align with the database page size (e.g., the 8KB commonly used by PostgreSQL) can mitigate write amplification.
Filesystem selection recommendations: choose ZFS for extremely high data integrity requirements where additional overhead is acceptable, choose Btrfs for out-of-the-box use and kernel integration, and follow bcachefs for those willing to bet on cutting-edge design and accept the associated risks.
Copy-on-write filesystems introduce write amplification for workloads with frequent random writes, such as databases, and both ZFS and Btrfs require targeted tuning.
Bartosz Fenski published an article comparing the performance of Btrfs, ZFS, and bcachefs under real-world workloads.
Btrfs has been merged into the Linux kernel mainline for many years, requires no additional modules, and supports copy-on-write, snapshots, subvolumes, and transparent compression.
Distributions such as openSUSE and Fedora have adopted Btrfs as their default filesystem.
4 more timeline events
All Facts (13)
Omarchy works out of the box: audio, GPU acceleration, external monitors, hibernation and Btrfs snapshots all require no additional configuration.
50%UnverifiedBtrfs is a copy-on-write file system on Linux whose snapshot feature can record the state of a subvolume while taking up almost no additional space, and with tools such as snapper or timeshift it enables quick rollbacks.
50%UnverifiedCommon ways to implement checkpoints include full copies, incremental diff storage, or leveraging filesystem snapshots (such as copy-on-write in APFS and Btrfs).
50%UnverifiedPostgreSQL's MVCC mechanism, ZFS/Btrfs filesystem snapshots, and some cloud database services use copy-on-write or similar storage tiering technology as their underlying foundation.
50%UnverifiedFilesystem selection recommendations: choose ZFS for extremely high data integrity requirements where additional overhead is acceptable, choose Btrfs for out-of-the-box use and kernel integration, and follow bcachefs for those willing to bet on cutting-edge design and accept the associated risks.
50%UnverifiedCopy-on-write filesystems introduce write amplification for workloads with frequent random writes, such as databases, and both ZFS and Btrfs require targeted tuning.
50%UnverifiedBtrfs has been merged into the Linux kernel mainline for many years, requires no additional modules, and supports copy-on-write, snapshots, subvolumes, and transparent compression.
50%UnverifiedDistributions such as openSUSE and Fedora have adopted Btrfs as their default filesystem.
50%UnverifiedOn Btrfs, CoW can be disabled for database files using chattr +C; on ZFS, reducing the recordsize to align with the database page size (e.g., the 8KB commonly used by PostgreSQL) can mitigate write amplification.
50%UnverifiedThe Btrfs documentation recommends using the nodatacow attribute on database files and virtual machine images to disable CoW and reduce fragmentation.
50%UnverifiedThe copy-on-write (CoW) mechanism is inherently more prone to fragmentation than in-place update strategies, because each modification scatters data blocks to new locations.
50%UnverifiedBtrfs uses a copy-on-write (CoW) mechanism that writes data to a new location rather than overwriting the original upon modification, which naturally produces more fragmentation than in-place update strategies.
50%UnverifiedBtrfs provides the built-in defragmentation command btrfs filesystem defragment, and XFS provides the xfs_fsr tool for online defragmentation.
50%