所有系统运行正常

支持比特币、门罗币、USDT、以太坊或 Solana 付款 · 仅需邮箱注册

存储与 RAID

存储服务器上的 ZFS:经久可靠的存储池布局

8 盘和 14 盘的 RAID-Z2 布局、NVMe special vdev、压缩与 scrub。

阅读约 8 分钟审核于 2026年9月25日

一台存储服务器,硬盘排列成存储池,上方是高速缓存层

选择布局

订购服务器时选择“无 RAID——支持 ZFS”,硬盘将保持原样、不做任何配置。使用大容量机械硬盘时,请选用 RAID-Z2(两块盘冗余):一块写满数据的 16⁠–⁠22 TB 硬盘重建需要一天甚至更长时间,这期间若再有一块盘故障,也绝不能因此丢掉整个存储池。

服务器布局可用容量
8 × 16 TB单组 8 盘 RAID-Z2≈ 96 TB
14 × 22 TB单组 14 盘 RAID-Z2(空间最大)≈ 264 TB
14 × 22 TB两组 7 盘 RAID-Z2(重建更快,IOPS 更高)≈ 220 TB

创建存储池

务必使用稳定的 /dev/disk/by-id/ 设备名,切勿使用 sdX:

$ apt install zfsutils-linux
$ ls -l /dev/disk/by-id/ | grep -v part
$ zpool create -o ashift=12 -O compression=zstd -O atime=off \
    tank raidz2 /dev/disk/by-id/ata-DISK1 /dev/disk/by-id/ata-DISK2 … /dev/disk/by-id/ata-DISK8

将元数据放在 NVMe 上

在 NVMe 硬盘上创建一个镜像的 special vdev 来存放元数据(也可选择存放小文件),可大幅加快目录列举和备份速度:

$ zpool add tank special mirror /dev/disk/by-id/nvme-A-part4 /dev/disk/by-id/nvme-B-part4
$ zfs set special_small_blocks=64K tank

special vdev 是存储池的一部分:它一旦丢失,整个存储池也随之丢失。务必为它配置镜像。

保持存储池健康

  • 每月执行 scrub:Debian 和 Ubuntu 会自动为您安排;可用 zpool status 查看。
  • 使用率保持在 80% 以下:超出后性能会急剧下降。
  • 使用较大的 recordsize 存放备份和媒体文件:zfs set recordsize=1M tank/backups。
  • 加密敏感数据集:使用 -o encryption=aes-256-gcm -o keyformat=passphrase 参数。
存储与 RAID

更多存储与 RAID 指南

全部 3 篇指南