Introduction 介绍
BTRFS is a modern copy on write (COW) filesystem for Linux aimed at
implementing advanced features while also focusing on fault tolerance, repair
and easy administration. Its main features and benefits are:
BTRFS 是一个现代的写时复制(COW)文件系统,专为 Linux 设计,旨在实现高级功能的同时也专注于容错性、修复和简单管理。其主要特点和优势是:
Snapshots which do not make a full copy of the files
不完全复制文件的快照Built-in volume management, support for software-based RAID 0, RAID 1, RAID 10 and others
内置卷管理,支持基于软件的 RAID 0、RAID 1、RAID 10 等Self-healing - checksums for data and metadata, automatic detection of silent data corruptions
自愈 - 数据和元数据的校验和,自动检测静默数据损坏
Feature overview: 功能概述:
Extent based file storage
基于范围的文件存储264 byte == 16 EiB maximum file size (practical limit is 8 EiB due to Linux VFS)
2 64 字节 == 16 EiB 最大文件大小(由于 Linux VFS,实际限制为 8 EiB)Space-efficient indexed directories
空间高效的索引目录Checksums on data and metadata (crc32c, xxhash, sha256, blake2b)
数据和元数据的校验和(crc32c,xxhash,sha256,blake2b)Compression (ZLIB, LZO, ZSTD), heuristics
压缩(ZLIB,LZO,ZSTD),启发式算法Integrated multiple device support:
集成多设备支持:File Striping (like RAID0)
文件条带化(类似 RAID0)File Mirroring (like RAID1 up to 4 copies)
文件镜像(类似 RAID1,最多 4 个副本)File Striping+Mirroring (like RAID10)
文件条带化+镜像(类似于 RAID10)Single and Dual Parity implementations (like RAID5/6, experimental, not production-ready)
单和双奇偶校验实现(类似于 RAID5/6,实验性质,不适用于生产环境)
SSD/NVMe (flash storage) awareness, TRIM/Discard for reporting free blocks for reuse and optimizations (e.g. avoiding unnecessary seek optimizations, sending writes in clusters.
SSD/NVMe(闪存存储)感知,用于报告可重用的空闲块的 TRIM/Discard 和优化(例如,避免不必要的寻道优化,以簇的形式发送写入)。Background scrub process for finding and repairing errors of files with redundant copies
查找和修复具有冗余副本的文件错误的后台清理过程In-place conversion of existing ext2/3/4 and reiserfs filesystems
现有 ext2/3/4 和 reiserfs 文件系统的原地转换Seeding device. Create a (readonly) filesystem that acts as a template to seed other Btrfs filesystems. The original filesystem and devices are included as a readonly starting point for the new filesystem. Using copy on write, all modifications are stored on different devices; the original is unchanged.
种子设备。创建一个(只读)文件系统,作为模板来种子其他 Btrfs 文件系统。原始文件系统和设备被包含为新文件系统的只读起点。使用写时复制,所有修改都存储在不同的设备上;原始文件系统保持不变。Subvolume-aware quota support
子卷配额支持Send/receive of subvolume changes, efficient incremental filesystem mirroring and backup
子卷更改的发送/接收,高效的增量文件系统镜像和备份Batch, or out-of-band deduplication (happens after writes, not during)
批量或带外重复数据删除(在写入后进行,而非在期间)Tree-checker, post-read and pre-write metadata verification
树检查器,读后写前的元数据验证Zoned mode support (SMR/ZBC/ZNS friendly allocation, emulated on non-zoned devices)
分区模式支持(SMR/ZBC/ZNS 友好分配,在非分区设备上模拟)