Fact-checked by Grok 2 weeks ago

EROFS

EROFS (Enhanced Read-Only ) is a modern, high-performance, block-based, immutable designed for read-only use cases in the , emphasizing flexibility, scalability, and minimal I/O amplification. Introduced in version 4.19, it provides an optimized on-disk format that supports algorithms such as LZ4 and Zstandard, along with byte-granularity deduplication to reduce storage needs while maintaining efficient access times. Unlike traditional archive formats, EROFS is engineered for general-purpose applications, including embedded devices and system images, where immutability and fast read operations are critical. EROFS features two inode formats: a compact 32-byte version suitable for files up to 4 GiB with simplified , and an extended 64-byte version supporting larger files up to 16 EiB, modification timestamps, and extended attributes. It enables block-aligned for maximum I/O efficiency, direct I/O support, and filesystem (Direct Access) for memory-mapped operations, making it ideal for resource-constrained environments. is optional and per-file configurable, with in-place ensuring that over 99% of blocks remain inline, which contributes to up to 45% smaller image sizes compared to uncompressed formats. In practical deployments, EROFS has been integrated into starting with version 13, where it serves as the default filesystem for system partitions, offering superior random and sequential read performance over alternatives like or while supporting full Virtual A/B updates. Initially developed by engineer Xiang Gao and now maintained by a global open-source community under the umbrella, EROFS continues to evolve with enhancements like multi-device backing and advanced deduplication, positioning it as a versatile solution for immutable storage in both mobile and embedded systems. Its design prioritizes runtime efficiency over mere compression ratios, resulting in faster boot times and lower memory usage in production scenarios.

Introduction

Overview

EROFS, or Enhanced Read-Only File System, is a lightweight, block-based, immutable filesystem designed specifically for read-only scenarios in the Linux kernel. It serves as a generic solution for immutable and trusted storage environments, delivering high read performance while maintaining a low memory footprint. This makes it particularly suitable for resource-constrained applications, such as embedded devices, mobile operating system images, and containerized workloads where write operations are not required. The primary design goals of EROFS emphasize flexibility, scalability, and compression-friendliness, setting it apart from earlier read-only filesystems like or ROMFS through its focus on modern integration and reduced runtime overhead. It prioritizes high-performance with minimal I/O amplification and memory usage, enabling efficient handling of large-scale read-only data sets in diverse environments. These attributes support feature extendability and user-friendly payload management, allowing seamless adaptation to evolving storage needs without compromising integrity. At its core, EROFS employs a little-endian byte order for on-disk structures to ensure compatibility with prevalent architectures. It utilizes 48-bit block addressing to accommodate massive volumes, supporting up to exabyte-scale filesystems in recent implementations. Additionally, it provides native support for multi-device backing stores, facilitating the distribution of external blobs across multiple volumes for enhanced scalability in and scenarios.

Development History

EROFS was initiated by in late 2017 to address the need for an efficient read-only filesystem optimized for and systems, focusing on compression-friendly designs to reduce footprints while maintaining high read performance. The project aimed to provide a alternative to existing read-only filesystems like , emphasizing scalability and low memory usage for resource-constrained environments. Initial development progressed rapidly, with EROFS entering the kernel's in version 4.19 released in October 2018 for testing and refinement. After a year of staging, it was fully merged into the mainline with 5.4 on November 24, 2019, marking its official availability as a stable filesystem. This integration was driven by primary developer Xiang Gao and the team, who submitted the promotion patch after proving its stability through extensive testing. Originally developed under , EROFS transitioned to open-source community maintenance following its mainline inclusion, involving contributors from organizations including , , , , , , and . The community's efforts have ensured ongoing enhancements, with Xiang Gao continuing as the lead maintainer. This collaborative model has broadened EROFS's applicability beyond its Huawei origins. Key milestones include the presentation of EROFS's compression-friendly architecture at the 2019 Annual Technical Conference, where the paper detailed its fixed-sized output and memory-efficient decompression techniques. In 5.13 (2021), support for big pclusters was added, enabling units up to 1 MiB for improved ratios on larger files. 5.16 (2022) introduced MicroLZMA as an option for better efficiency in specific scenarios. Further advancements came in 5.19 (2022) with file-based fscache for on-demand loading without block devices. In 6.15 (2025), the maximum volume size was expanded to 1 EiB to accommodate emerging large-scale use cases like datasets. As of November 2025, EROFS remains under active development, with recent hardening patches merged in Linux 6.18 (October 2025) to mitigate risks from specially crafted images that could cause crashes or infinite loops. This update enhances security without compromising performance, reflecting the filesystem's evolution toward robustness in diverse deployments, including its adoption in Android for read-only partitions.

Design and Architecture

On-Disk Format

The EROFS on-disk format employs a block-based physical for , with that is not strictly aligned to blocks, allowing for flexible arrangement to optimize access patterns. The filesystem begins with 1024 bytes of unused space, followed by the superblock at 1024, which is 128 bytes in and records essential such as the magic number (0xE0F5E1E2), a CRC32-C for integrity, the block expressed as a bit shift (defaulting to 4096 bytes via 12 bits), the starting block address of the metadata area (meta_blkaddr), and support indicators for additional features. This design ensures compatibility with little-endian byte order and facilitates efficient mounting by providing all core parameters in a compact, fixed location. The logical organization of EROFS volumes intermixes and data regions starting after the , with primarily concentrated beginning at the meta_blkaddr to enable while permitting user-defined layouts that blend the two for reduced seek times. This mixed approach supports inline storage of small data and extended attributes directly within structures, though detailed inode handling is separate. The format avoids centralized tables for inodes or directories, instead relying on a tree-like structure of components that can be arranged arbitrarily by the creator tool, promoting compactness and performance in read-only scenarios. Addressing in EROFS utilizes 48-bit , enabling volumes up to 1 EiB in with the default 4 KiB , an extension from the original 32-bit limit of 16 TiB to accommodate larger needs in modern applications. Block addresses are resolved relative to the superblock's parameters, with offsets calculated as meta_blkaddr multiplied by plus a fixed multiple of the node ID (NID), ensuring predictable positioning without sparse allocation overhead. This scheme supports fixed-sized output units for data placement, aiding in bounded and direct access. EROFS includes multi-device support to span volumes across multiple block devices, indicated by the extra_devices field in the , which specifies the count of additional devices beyond the primary one. A device table follows at an offset defined by devt_slotoff, listing details like device IDs and sizes, allowing for distributed storage in scenarios such as container images or large archives. This feature maintains a unified while distributing physical extents. Metadata organization in EROFS emphasizes compact encoding to minimize space usage, with inode tables positioned at fixed 32-byte aligned slots starting from the base address, and entries stored in blocks that separate entry from filenames for alphabetical ordering and efficient lookup. Shared extended attributes occupy a dedicated area at xattr_blkaddr, aligned to 4-byte slots, while extent maps use dense representations to track data locations without . This reduces overall footprint and enhances read locality on flash-based .

Inode Structures

EROFS utilizes two primary inode formats to accommodate varying file sizes and metadata requirements while maintaining efficiency in a read-only environment. The compact inode targets smaller files, optimizing space usage, whereas the extended inode provides expanded capabilities for larger files, including enhanced attribute support and advanced data layouts. Both formats adhere to standards for core file attributes and integrate extended attributes (xattrs) for lists (ACLs), with aligned on 32-byte boundaries within dedicated metablocks. The compact inode spans 32 bytes and supports files up to 4 GiB - 1 byte in size, making it suitable for the majority of in resource-constrained systems. It includes a modification in seconds along with essential fields for file permissions, , and basic . Extended attributes are indicated by the i_xattr_icount field, allowing optional inline storage immediately following the inode. The structure is defined as follows:
OffsetSize (bytes)FieldDescription
0x002i_formatInode version and data layout hints (e.g., plain, inline, or chunk-based).
0x022i_xattr_icountNumber of extended attribute entries (0 for none).
0x042i_modeFile type and permissions ( mode bits).
0x062i_nlink count (16-bit, maximum ).
0x084i_sizeLogical file size in bytes (32-bit).
0x0C4i_mtimeModification time in seconds since .
0x104i_uUnion for data mapping: direct block address for plain files, index table address for compressed, or extent header for chunk-based.
0x144i_inoInode number.
0x182i_uidOwner user ID (16-bit, maximum ).
0x1A2i_gidOwner group ID (16-bit, maximum ).
0x1C4i_reservedReserved for future use.
This format ensures compliance for mode, links, , and size while reserving space for up to 8 bytes of inline . The extended inode, at 64 bytes, accommodates files up to 16 EiB (limited by filesystem volume size) and includes additional fields for comprehensive attribute tracking and deduplication support. It expands fields to 32 bits, adds nanosecond precision to the modification timestamp, and provides a 32-bit hard link count, enabling finer-grained file . The reserved area is available for future features such as deduplication flags, while the expanded i_u union supports handling through hole markers in extent trees. The structure builds on the compact format with these additions:
OffsetSize (bytes)FieldDescription
0x002i_formatInode version and data layout hints.
0x022i_xattr_icountNumber of extended attribute entries.
0x042i_modeFile type and permissions.
0x062i_nlink count (16-bit).
0x088i_sizeLogical in bytes (64-bit).
0x104i_u for , with extended support for large extents and sparse holes.
0x144i_inoInode number.
0x184i_uidOwner user (32-bit, maximum 4,294,967,295).
0x1C4i_gidOwner group (32-bit, maximum 4,294,967,295).
0x208i_mtimeModification time in seconds since .
0x284i_mtime_nsec precision for i_mtime.
0x2C4i_nlink count (32-bit, maximum 4,294,967,295).
0x3016i_reserved2Reserved for future use.
This format reserves up to 18 bytes for inline , supporting POSIX-compliant timestamps and via xattrs. Both inode formats share POSIX.1 compliance for core attributes such as mode, nlink, uid/gid, and size, with support provided through xattrs indicated by i_xattr_icount (up to filesystem limits). Inline data via tail-packing is available for small files under 184 bytes, embedding content directly after the inode to eliminate separate block allocation and reduce fragmentation. This feature applies to both formats when the EROFS_INODE_FLAT_INLINE layout is selected, enhancing efficiency for tiny files common in embedded scenarios. Data mapping in EROFS inodes varies by file characteristics to optimize access patterns. Direct mapping (EROFS_INODE_FLAT_PLAIN) addresses consecutive blocks via i_u for small, uncompressed files. Indirect mapping occurs in compressed layouts (EROFS_INODE_COMPRESSED_*), where i_u points to an index table listing physical cluster addresses for logical clusters, with per-cluster compression flags indicating LZ4, , or plain data. For large files, extent trees in the chunk-based layout (EROFS_INODE_CHUNK_BASED) use a hierarchical structure in i_u for mapping up to 16 EiB, supporting sparse files by denoting holes with null addresses (-1) and enabling deduplication through shared chunk references. These mappings integrate with the overall on-disk layout by referencing blocks from the superblock's metablock address.

Features

Compression Mechanisms

EROFS supports transparent data compression on a per-file basis to enhance storage efficiency while maintaining read performance. The default algorithm is LZ4, available since 5.3, providing fast suitable for resource-constrained environments. MicroLZMA was added in Linux 5.16 for achieving higher ratios at the expense of increased overhead. support was introduced in 6.6, offering a balance between and CPU usage compared to LZ4. Zstandard support was introduced in 6.10, providing high ratios with moderate overhead. Compression in EROFS employs a fixed-sized output approach, where variable-length input is compressed into fixed-sized physical clusters (pclusters), typically 4 KiB by default, to enable in-place directly into the without requiring temporary buffers. Logical clusters (lclusters) are fixed-sized, equal to the filesystem block size (typically 4 KiB), allowing partial reads of compressed to minimize I/O amplification and latency. This integration is indicated by flags in the inode structure, enabling selective application per file or cluster. The benefits include compression ratios of up to 2-3x for typical payloads such as application data and images, reducing overall storage footprint while supporting efficient . By design, this mechanism lowers I/O through partial cluster , avoiding full-block reads common in other compressed file systems. Configuration occurs during filesystem creation using the mkfs.erofs tool, where the algorithm and level are specified via the -z option (e.g., -zlz4 for LZ4 or -zlzma,9 for MicroLZMA at level 9). At runtime, leverages threads, including per-CPU kthreads introduced in 6.3 for low- processing, or direct in-place CPU paths to optimize for read-heavy workloads.

Deduplication and Performance Optimizations

EROFS supports chunk-based , introduced in version 5.15, which splits files into equal-sized data chunks and allows extents to reference shared compressed data blocks, thereby reducing storage redundancy in scenarios like multi-layer images or updates. This mechanism enables efficient sharing of identical data chunks across files without duplicating them on disk, particularly beneficial for read-only images where common data patterns, such as shared libraries, can be referenced multiple times. Since 6.1, physical clusters (pclusters) can serve multiple logical clusters (lclusters) or extents, further enhancing deduplication by allowing compressed data to be shared across different file regions. To optimize read performance, EROFS incorporates big pcluster mode, available since 5.13, which allows compressed physical clusters to exceed the standard file-system block size—up to 1 MiB—facilitating better compression ratios and faster sequential reads on storage devices like . This mode packs multiple logical clusters into larger physical units, minimizing decompression overhead for linear access patterns common in processes or application loading. Additionally, EROFS employs memory-efficient techniques for handling, leveraging the kernel's slab allocator to reduce fragmentation and allocation when caching inode and extent . For uncompressed files, the filesystem supports direct I/O without buffer heads, bypassing the to prevent double buffering and improve throughput in high-bandwidth scenarios. Key performance enhancements include in-place decompression, which reuses file pages for temporary compressed data storage, limiting additional RAM usage to under 4 KiB per decompression operation in most cases and avoiding the need for large bounce buffers. This approach ensures low memory footprint during runtime, with evaluations showing only a 4.9% increase in memory usage compared to uncompressed filesystems like Ext4. Since Linux 5.19, integration with the fscache framework enables on-demand caching of compressed data blocks, allowing EROFS images to be mounted without underlying block devices and supporting lazy loading for container environments. As a read-only filesystem, EROFS inherently avoids write amplification issues associated with and deduplication in mutable systems, eliminating the need for garbage collection or data rewriting that could accelerate wear on flash storage. Its design prioritizes compact on-disk layouts and efficient read paths, aligning with flash-optimized wear-leveling by minimizing physical block erasures through immutable data structures.

Implementation

Kernel Integration

EROFS is mounted using the standard mount command with the -t erofs option, specifying the device or image file as the source. It supports mounting via loop devices for filesystem images stored as regular files, enabling use without dedicated block devices, and can function as the lower directory in configurations for writable overlays on read-only bases. The enforces read-only access at the filesystem level, preventing any modifications to the mounted volume and ensuring immutability. In runtime operation, EROFS integrates seamlessly with the Virtual File System (VFS) layer, providing standard interfaces for directory traversal, file lookups, and read operations. It employs bio-based I/O mechanisms for efficient block-level data access, leveraging the block layer to submit read requests directly to underlying storage. occurs either inline within the read path for small, uncompressed extents or asynchronously via kernel threads for larger compressed clusters, minimizing latency while supporting algorithms like LZ4 and zlib. Key enhancements to EROFS integration include support for file-backed mounts since 6.12 (replacing the fscache backend introduced in 5.19), enabling persistent, on-demand caching of filesystem data without requiring block devices, improving performance in and networked scenarios. Multi-threaded was introduced in 6.3, allowing of compressed data across CPU cores to accelerate read throughput, particularly for chunk-based files. Additionally, with hardening measures merged for 6.18 to mitigate risks from malformed filesystem images, such as potential crashes or corruptions, through enhanced validation of on-disk structures. As a read-only filesystem, EROFS provides no support for write operations, making it unsuitable for environments requiring mutable storage. It is also incompatible with filesystems that rely on journaling for consistency, as its immutable design precludes any form of write journaling or recovery mechanisms.

User-Space Tools

The primary user-space tool for EROFS is mkfs.erofs, part of the erofs-utils package, which formats EROFS filesystem images from a directory or tarball, supporting options for compression algorithms such as LZ4, zlib, (kernel support since Linux 6.10), and others, along with configurable compression levels to balance size and performance. It also enables deduplication through the -E deduplication flag for global removal of duplicate data blocks (requiring 6.1 or later) and fragment deduplication via -E fragdedupe when combined with fragmentation support. Inline data placement is enabled by default to optimize small files, but can be disabled with -E ^inline_data for compatibility with file system modes in 5.15 and newer. Extended attributes (xattrs) are inlined by default up to two per inode, adjustable via --xattr-inline N, and can be filtered by prefix using --xattr-prefix for selective inclusion ( 6.4+). Multi-device setups are supported by specifying additional backing devices with --extra-blob-device DEVICE for chunk-based data distribution. Additional utilities in erofs-utils include fsck.erofs for verifying the integrity of an EROFS image by scanning its and data structures, with options like -f to force checks on mounted images and -V for version information. The dump.erofs tool extracts and inspects filesystem contents, displaying overall disk statistics, details, or specific file information from an image, aiding in and . Image size optimization is facilitated through mkfs.erofs flags such as --block-size BYTES (defaulting to the system page size, minimum 512 bytes) and compression-specific parameters to reduce overhead without compromising read efficiency. The erofs-utils package is available in major Linux distributions, including , , , , , and , often via standard repositories like extra in Arch or universe in Ubuntu. is hosted at the official kernel repository git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git and mirrored on at erofs/erofs-utils for community contributions. Basic usage of mkfs.erofs follows the syntax mkfs.erofs [OPTIONS] DESTINATION SOURCE, where SOURCE is the input directory or tarball and DESTINATION is the output image file; for example, mkfs.erofs -zl 4096 /path/to/source /output.img creates a compressed image with LZ4 at level 4096. To enable deduplication and inline xattrs for a multi-device setup, one might use mkfs.erofs -E deduplication --xattr-inline 4 --extra-blob-device /dev/sdb /output.img /source/dir. For verification, fsck.erofs /output.img performs a standard integrity check, while dump.erofs -i /output.img shows inode details for inspection.

Adoption and Use Cases

Mobile and Android Devices

EROFS integration into began with optional support in the configurations around in 2019, allowing vendors to enable it for read-only partitions. However, full support, including compatibility with Virtual A/B updates, was established in released in 2022, where it became the required for all read-only system partitions on launch devices to facilitate faster boot times and streamlined updates. This is configured via specific options in AOSP builds. Several vendors have adopted EROFS for their custom ROMs and vendor partitions to optimize storage and performance. pioneered its use starting with 9.0.1 in 2018, deploying it across devices and extending support to , where EROFS enhances read performance in both mobile and PC variants; as of October 2025, 5 (leveraging EROFS) has been installed on over 23 million devices. integrated it into 14 and later versions for -based devices. introduced EROFS on the S23 series in 2023, marking its first use for read-only partitions in flagship smartphones, and has adopted it for devices shipping with and later. In mobile environments, EROFS provides key advantages tailored to flash-based storage like eMMC and UFS. Its reduces OTA update package sizes, enabling quicker downloads and installations over limited mobile networks. Read speeds improve significantly—up to 20% on average and 200% in scenarios—due to in-place , which minimizes during app launches and system operations. Additionally, ratios help conserve limited space, freeing up to several gigabytes for user data without compromising integrity. A notable case involves Google's devices, which align with standards requiring EROFS for and later, using it for system partitions to optimize dynamic partitioning and enhance update efficiency.

Embedded and Container Systems

EROFS finds application in systems, where its lightweight design and low resource overhead make it suitable for resource-constrained hardware such as devices and images. Developed with a focus on compression-friendly operations for devices with limited and , EROFS reduces storage usage by nearly 50% compared to traditional filesystems and achieves high performance with little extra memory overhead compared to using memory-efficient decompression algorithms, which are particularly beneficial for read-only environments like router and other deployments that prioritize fast times and minimal I/O amplification. In such systems, EROFS can cut times by up to 22.9% under workloads like file I/O operations on high-end embedded processors. In container ecosystems, EROFS supports immutable layers in and OCI-compliant through integration with technologies like Nydus and RAFS v6, enabling kernel-native on-demand loading since its inclusion in 5.19 in 2022. has adopted EROFS in its Container Service for (ACK) via Nydus, where it facilitates chunk-level deduplication and compression to accelerate distribution and reduce registry storage sizes. This setup allows startups to match native performance in demanding workloads, such as compilation, by prefetching data and minimizing user-space overhead. Beyond containers, EROFS serves as a modern alternative to in other read-only scenarios, including boot partitions and live media in distributions. switched its live media—such as Workstation, KDE Desktop, and CoreOS images—from SquashFS to EROFS in Fedora 42 (released April 2025), citing EROFS's active development and support for advanced features like better compression ratios (e.g., 629 MB vs. 668 MB with ). This transition also yields faster build times, reducing production from 15.4 minutes to 9.6 minutes for certain spins, while aligning with upstream ecosystems like RHEL 10. As of November 2025, EROFS continues to gain traction in open-source communities, with contributions from vendors like . In these contexts, EROFS demonstrates superior read performance over , with benchmarks showing up to 42% faster sequential reads using compression and around 20-25% improvements with LZ4 variants, making it ideal for I/O-bound and environments. Its deduplication capabilities further optimize storage in container registries by eliminating redundant chunks across images.

References

  1. [1]
    EROFS - Enhanced Read-Only File System
    EROFS filesystem stands for Enhanced Read-Only File System. It aims to form a generic read-only filesystem solution for various read-only use cases.
  2. [2]
    Overview — EROFS filesystem project
    EROFS is an Enhanced Read-Only File System, a modern, flexible, high-performance, block-based, immutable filesystem, block-aligned for data utilization.Installation · Build & Mount · Features and Comparison · Case Studies
  3. [3]
    erofs(5) - Linux manual page - man7.org
    EROFS is the Enhanced Read-Only File System, a create-once read-only filesystem with compression and multi-device backing.
  4. [4]
    EROFS - Android Open Source Project
    Oct 9, 2025 · EROFS is a read-only file system introduced in Linux 4.19. It supports compression and deduplication, and is optimized for read performance.
  5. [5]
    The first part of the 6.15 merge window - LWN.net
    Mar 28, 2025 · The EROFS filesystem now supports 48-bit block addressing to enable it to handle massive files. ... There are still nearly 6,000 commits sitting ...
  6. [6]
    [PDF] EROFS file system update and its future @ FOSDEM 23
    EROFS is a high-performance read-only filesystem, designed as a seekable archival format, with recent updates including chunk-based files and multiple devices.<|control11|><|separator|>
  7. [7]
    EROFS: A Compression-friendly Readonly File System for ... - USENIX
    In this paper, we describe EROFS, a new compression-friendly read-only file system that leverages fixed-sized output compression and memory-efficient ...
  8. [8]
    EROFS - LinuxReviews
    EROFS was first introduced to the Linux kernel's "staging" area in 2018. It became part of the mainline Linux kernel when Linux 5.4 was released in November ...
  9. [9]
    Huawei Announces EROFS Linux File-System, Might Eventually Be ...
    May 31, 2018 · Huawei's Gao Xiang has announced the EROFS open-source Linux file-system intended for Android devices, but still at its very early stages of ...
  10. [10]
    Gao Xiang: [PATCH] erofs: promote erofs from staging - LKML
    Jul 4, 2019 · EROFS file system has been in Linux-staging for about a year. It has been proved to be stable enough to move out of staging<|control11|><|separator|>
  11. [11]
  12. [12]
    linux-erofs@lists.ozlabs.org info page
    Linux EROFS is a file system being developed. The official website is https://erofs.docs.kernel.org. See the kernel development tree at https://git.kernel.org/ ...Missing: documentation | Show results with:documentation
  13. [13]
    EROFS Sends In "Big Pcluster" Support For Linux 5.13 ... - Phoronix
    Apr 27, 2021 · The main feature being added to EROFS with Linux 5.13 is "big pcluster" support, which will allow EROFS to compress data into more than one file-system block.
  14. [14]
    EROFS File-System Adding LZMA Compression Support Via New ...
    Oct 11, 2021 · This LZMA compression support for EROFS can be used for compressing on a per-file basis and even used for secondary compression on top of any ...
  15. [15]
    EROFS, exFAT & EXT4 File-System Updates Arrive For Linux 5.19
    May 26, 2022 · The big change for EROFS with Linux 5.19 is on-demand loading for EROFS with the FSCACHE/CacheFiles infrastructure. This introduces a new file- ...
  16. [16]
    EROFS Being Extended To Handle Massive Amounts Of Data For AI ...
    Mar 23, 2025 · In advance of the Linux 6.15 merge window opening following the v6.14 kernel release, EROFS is seeing 48-bit addressing support added to handle ...
  17. [17]
    Linux 6.18 Hardened Against Specially-Crafted EROFS ... - Phoronix
    Oct 22, 2025 · Merged today for Linux 6.18 is some new hardening to the EROFS driver where specially-crafted file-system images could lead to system crashes or ...Missing: milestones | Show results with:milestones
  18. [18]
    Core on-disk format — EROFS filesystem project
    The EROFS format is simple, block-based for data, with no centralized tables. It uses erofs_super_block, erofs_inode, and erofs_dirent components. The ...
  19. [19]
  20. [20]
    Features and Comparison — EROFS filesystem project
    Data compression is an optional feature of the EROFS filesystem. Currently, the supported compression algorithms include LZ4, MicroLZMA (since Linux 5.16) ...Missing: LZMA | Show results with:LZMA
  21. [21]
    mkfs.erofs(1) - Arch manual pages
    Force generation of inode chunk format as a 4-byte block address array. force-chunk-indexes: Forcely generate inode chunk format as an 8-byte chunk index (with ...
  22. [22]
    EROFS Gets Low-Latency Decompression For Much Better ...
    Feb 20, 2023 · The EROFS file-system updates for Linux 6.3 include introducing a new option for per-CPU KThreads to provide low-latency decompression for speeding up use.Missing: kernel threads
  23. [23]
    EROFS - Enhanced Read-Only File System
    In order to support chunk-based data deduplication, a new inode data layout has been supported since Linux v5.15: Files are split in equal-sized data chunks ...
  24. [24]
    [PDF] EROFS: A Compression-friendly Readonly File System for Resource ...
    This paper is included in the Proceedings of the. 2019 USENIX Annual Technical Conference. July 10–12, 2019 • Renton, WA, USA. ISBN 978-1-939133-03-8.
  25. [25]
    Native sub-filesystem merging - EROFS
    In addition, Since Linux 5.19, EROFS has added EROFS over fscache to make use of fscache caching framework without explicit block devices, which is ...
  26. [26]
    EROFS Switches To Buffered I/O For File-Backed Mounts ... - Phoronix
    Dec 18, 2024 · Back for the Linux 6.12 kernel EROFS introduced support for file-backed mounts to help with container and sandboxing use-cases.
  27. [27]
    EROFS - Wikipedia
    EROFS is a lightweight read-only file system initially developed by Huawei, originally for the Linux kernel and now maintained by an open-source community.
  28. [28]
    mkfs.erofs(1) — erofs-utils — Debian testing - Debian Manpages
    Jul 30, 2025 · It cannot be less than 512 bytes. -C max-pcluster-size: Specify the maximum size of compress physical cluster in bytes. This may cause the ...Missing: EiB 6.15
  29. [29]
    fsck.erofs - tool to check the EROFS filesystem's integrity
    fsck.erofs is used to scan an EROFS filesystem IMAGE and check the integrity of it. OPTIONS. -V Print the version number of fsck.Missing: dump. | Show results with:dump.
  30. [30]
    dump.erofs(1) — erofs-utils — Debian bookworm - Debian Manpages
    Jun 16, 2022 · dump.erofs is used to retrieve erofs metadata from IMAGE and demonstrate 1) overall disk statistics, 2) superblock information, 3) file information of the ...Missing: usage | Show results with:usage
  31. [31]
    erofs-utils 1.8.10-1 (x86_64) - Arch Linux
    Package Actions ; Userspace utilities for linux-erofs file system · https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git · Apache-2.0, GPL-2.0-or- ...
  32. [32]
    Packages for erofs-utils - Repology
    Summary: Utilities for working with EROFS; Maintainer: builder@centos.org. Category: Unspecified. License: GPL-2.0-only AND GPL-2.0-or-later AND ...
  33. [33]
    A github erofs-utils fork for community development
    ... EROFS filesystem stands for Enhanced Read-Only File System. It aims to form a generic read-only filesystem solution for various read-only use cases instead ...
  34. [34]
    Android 13 Launch Devices Will Use Huawei's EROFS for ... - Esper
    May 5, 2022 · In this paper, we describe EROFS ... In Proceedings of the 2019 USENIX Conference on Usenix Annual Technical Conference (USENIX ATC '19).
  35. [35]
    What is EROFS file system that Google will reportedly implement in ...
    May 26, 2022 · Google will reportedly use a new type of file format, called the EROFS file system, in Android 13. Wondering what it is?
  36. [36]
    Samsung Galaxy S23 to use Huawei-inspired Android 13 space ...
    May 25, 2022 · Samsung Galaxy S23 and all devices running Android 13 will use Enhanced Read-Only File System to offer significant advantages over the ...
  37. [37]
    A first look at app security on HarmonyOS NEXT - Promon
    May 20, 2025 · Huawei also has implemented their own filesystems that are used in HarmonyOS (EROFS and HMDFS). They have implemented their adb alternative ...
  38. [38]
    [EMUI] Technology behind EROFS File System - HUAWEI Community
    Aug 8, 2019 · EROFS file system will increase random read speed on an average by 20 percent going up to 200 percent while saving over 2GB of system storage.Missing: 9.0.1 | Show results with:9.0.1
  39. [39]
    Faster Container Image Loading Speed with Nydus, RAFS, and ...
    Jun 15, 2022 · This article introduces the Nydus, RAFS v6 image format, and EROFS over Fscache, and discusses they help overcome the challenges of slow container image ...
  40. [40]
    Changes/EROFSforLiveMedia - Fedora Project Wiki
    Feb 18, 2025 · Fedora live media is switching from SquashFS to EROFS, a modern, feature-rich read-only filesystem, for all kiwi-produced live media.
  41. [41]
    EROFS vs. SquashFS: A Gentle Benchmark - sigma star
    Jul 21, 2022 · By first comparing EROFS against SquashFS taking a 4KiB block size, EROFS benefits from the aligned reads, besting the read performance ...