Jump to content

Bcachefs

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by LCS (talk | contribs) at 04:11, 9 November 2022 (Added file system dates recorded information to the info box based on bcachefs source code found in fs.c.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Bcachefs
Developer(s)Kent Overstreet
Features
Dates recordedmodification (mtime), attribute modification (ctime), access (atime), create (crtime)
Transparent
compression
Yes
Transparent
encryption
Yes
Copy-on-writeYes
Other
Supported
operating systems
Linux
Websitebcachefs.org

Bcachefs is a copy-on-write (COW) file system for Linux-based operating systems. Its primary developer, Kent Overstreet, first announced it in 2015, and efforts are ongoing to have it included in the mainline Linux kernel.[1][2][3] It is intended to compete with the modern features of ZFS or Btrfs, and the speed and performance of ext4 or XFS.

Features

Bcachefs is a copy-on-write (COW) file system for Linux-based operating systems.[4] Planned or existing features for Bcachefs include caching,[5] full file-system encryption using the ChaCha20 and Poly1305 algorithms,[6] native compression[5] via zlib,[4] LZ4, and Zstandard,[citation needed] snapshots,[5] CRC-32C and 64-bit checksumming.[4] It can use multiple block devices, including in RAID configurations.[6] Bcachefs provides all the functionality of Bcache, a block-layer cache system for Linux, with which Bcachefs shares about 80% of its code.[1]

History

Primary development has been by Kent Overstreet, the developer of Bcache, which he describes as a "prototype" for the ideas that became Bcachefs. Overstreet intends Bcachefs to replace Bcache.[1] Overstreet has stated that development of Bcachefs began as Bcache's developers realized that its codebase had "been evolving ... into a full blown, general-purpose POSIX filesystem", and that "there was a really clean and elegant design" within it if they took it in that direction. Some time after Bcache was merged in 2013 into the mainline Linux kernel, Overstreet left his job at Google to work full-time on Bcachefs.[4]

After a few years' unfunded development, Overstreet announced Bcachefs in 2015, at which point he called the code "more or less feature complete", and called for testers and contributors. He intended it to be an advanced file system with modern features[7] like those of ZFS or Btrfs, with the speed and performance of file systems such as ext4 and XFS.[4] As of 2017 Overstreet was receiving financial support for the development of Bcachefs via Patreon.[6]

As of mid-2018, the on-disk format had settled.[1] Patches had been submitted for review to have Bcachefs included in the mainline Linux kernel, but had not yet been accepted.[5]

By mid-2019, the desired features of Bcachefs had reached and associated patches to LKML was submitted for peer review.[8] As of September 2022, Bcachefs has still not been merged into the mainline Linux kernel.[2][3]

References

Works cited

  • Baader, Hans-Joachim (2017-03-17). "Neue Version von Bcachefs bringt Verschlüsselung" [New version of bcachefs brings encryption]. Pro-Linux [de] (in German). Retrieved 2018-11-23.
  • Edge, Jake (2018-05-23). "An update on bcachefs". LWN.net. Archived from the original on 2018-06-01. Retrieved 2018-11-22.
  • Jackson, Joab (2015-08-21). "Former Google engineer revs up a new Linux filesystem". PC World. Retrieved 2018-11-22.
  • Larabel, Michael (2015-08-21). "A New Linux File-System Aims For Speed While Having ZFS/Btrfs-Like Features". Phoronix. Archived from the original on 2015-08-23. Retrieved 2018-11-22.
  • Larabel, Michael (2018-05-09). "Bcachefs File-System Is Working On Going Upstream In The Linux Kernel". Phoronix. Archived from the original on 2018-07-09. Retrieved 2018-11-22.
  • LKML (2019-06-10). "bcachefs status update (it's done cooking; let's get this sucker merged)". Linux Kernel Mailing List.
  • LKML (2021-11-04). "bcachefs status update - current and future work". Linux Kernel Mailing List. Retrieved 2021-12-02.
  • LKML (2022-02-16). "bcachefs". Linux Kernel Mailing List. Retrieved 2022-09-14.