๐ Overview#
EROFS - Enhanced Read-Only File System
A modern, flexible, general-purpose, high-performance, block-based immutable filesystem with a highly optimized on-disk format and runtime implementation, designed for a variety of use casesโnot just storage space savingsโwhile maintaining optimal 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 on-disk format for non-encoded use cases.
Besides, advanced on-disk 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
Composefs; containerd; Dragonfly Nydus; gVisor; Kata Containers; Kata Containers (rootfs)
Archiso; CoreOS Assembler; dracut-ng; kdump-utils; KIWI; Linglong
Distributions: Alpine Linux; Amazon Linux; Arch Linux; Azure Linux; Bottlerocket; Buildroot; CentOS Stream; Chromium OS; Debian; Deepin Linux; Fedora; Gentoo; GNU Guix; Homebrew; MacPorts; NixOS; openAnolis; OpenCloudOS; openEuler; openSUSE; OpenWrt; Oracle Linux; 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> or join our Matrix room <#erofs:matrix.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