๐ Overview#
EROFS - Enhanced Read-Only File System
A modern, flexible, general-purpose, high-performance block-based immutable filesystem with highly-optimized ondisk format and runtime implementation aimed at various use cases instead of just focusing on storage space saving without considering any side effects of runtime performance.
EROFS has been formally available since Linux 5.4. It is currently maintained by an open-source community from all over the world, and is still under active development.
A modern filesystem more than just another archive format: EROFS is strictly block-aligned to maximize the data utilization of a single disk I/O and enable advanced features like Direct I/O and FSDAX.
Minimal core ondisk format for non-encoded use cases.
Besides, advanced ondisk and/or runtime features can be enabled on demand.
Per-file data compression as an option, normally using fixed-sized output compression to fill up each block. Compressed data can be deduplicated with byte-granularity cut points.
Applications
Distributions: Alpine Linux; Arch Linux; Azure Linux; Bottlerocket; Buildroot; CentOS Stream; Chromium OS; Debian; Deepin Linux; Fedora; Gentoo; GNU Guix; Homebrew; NixOS; openAnolis; OpenCloudOS; openEuler; openSUSE; Ubuntu; Red Hat Enterprise Linux; Void Linux; yocto; and maybe more.
Bootloaders: Das U-Boot; GNU GRUB
Architecture
Feedback & Contributing
If youโre interested, feel free to send feedback and/or patches to the linux-erofs mailing list <linux-erofs@lists.ozlabs.org>. Developer guides might be a useful start for newcomers as the first step.
Please also take a look at Code of Conduct for all Linux kernel development communities.
Additional resources
EROFS in-tree documentation - kernel.org
An introduction to EROFS - LWN.net
EROFS: A Compression-friendly Readonly File System for Resource-scarce Devices - USENIX ATCโ19.
EROFS็ไป็ปไธ่ฎจ่ฎบ (chn) - Weixin Official Accounts Platform
EROFS Everywhere: An Image-Based Kernel Approach for Various Use Cases (chn) with slides (eng) - KubeCon + CloudNativeCon + Open Source Summit China 2023
Finding the Best Block Filesystem for Your Embedded Linux System - Michael Opdenacker, Bootlin @ EOSS 2023