Bcachefs¶
Bcachefs is a next-generation copy-on-write filesystem for Linux, created by Kent Overstreet (developer of bcache). It aims to provide features comparable to ZFS and Btrfs with a cleaner, more maintainable codebase.
Current Status¶
Experimental Filesystem
Bcachefs is still experimental. Always maintain backups of important data.
Kernel Status (2025)
Bcachefs was merged into the Linux kernel in version 6.7 (January 2024) but was removed in Linux 6.18 (September 2025). It is now maintained as an external DKMS module.
The Kernel Removal¶
In September 2025, Linus Torvalds removed bcachefs from the Linux kernel tree (~117,000 lines of code). The removal occurred because:
- The developer repeatedly submitted major patches late in merge windows, violating kernel development norms
- After warnings during the 6.17 cycle, Torvalds followed through on consequences
- The project had already shifted to DKMS distribution, making in-kernel code stale
Quote from the removal commit:
"It's now a DKMS module, making the in-kernel code stale, so remove it to avoid any version confusion"
Bcachefs continues development outside the kernel tree and remains usable via DKMS.
Key Features¶
| Feature | Description |
|---|---|
| Copy-on-write | Never overwrites data in place |
| Checksums | Full data and metadata checksums |
| Compression | LZ4, gzip, zstd support |
| Encryption | ChaCha20/Poly1305 whole-filesystem encryption |
| Multi-device | Striping, mirroring, RAID1, SSD caching |
| Snapshots | Efficient point-in-time copies |
| Subvolumes | Independent filesystem namespaces |
Why Consider Bcachefs?¶
Potential advantages over ZFS:
- Native Linux filesystem (no licensing concerns)
- Smaller, more maintainable codebase
- Designed with modern storage in mind
- Built-in encryption without LUKS
Potential advantages over Btrfs:
- Cleaner implementation
- Better RAID handling (eventually)
- More consistent performance
When to Use Bcachefs¶
Consider bcachefs for:
- Non-critical data storage
- Experimentation and learning
- Systems where you control kernel/module versions
- Users comfortable with DKMS and kernel compilation
Avoid bcachefs for:
- Production servers
- Critical data without redundant backups
- Systems requiring stability guarantees
- Environments where DKMS compilation is problematic
Sections¶
- Concepts - Bcachefs fundamentals and architecture
- Installation - DKMS setup on Ubuntu
- Usage - Creating and managing filesystems
- Features - Encryption, compression, caching
- Limitations - Known issues and what to avoid