ZFS: файловая система с RAID, снапшотами и сжатием | Глоссарий FREEHOSTING

ZFS

Zettabyte File System
ZFS — ZFS — файловая система и менеджер томов от Sun Microsystems, объединяющий пулы дисков, снапшоты, контрольные суммы и сжатие в одном слое для надёжного хранения данных.

Определение простыми словами

ZFS — гибрид файловой системы и менеджера томов. Диски объединяются в пул (zpool), поверх которого создают наборы данных (dataset) с независимыми настройками сжатия, квот и снапшотов. Каждый блок защищён контрольной суммой SHA-256 — система сама обнаруживает и исправляет битые сектора при чтении, если есть избыточность.

Главные отличия от ext4 и xfs — встроенный RAID (RAID-Z), мгновенные снимки без копирования данных и онлайн-сжатие LZ4. Стандарт для NAS, бэкап-серверов и файловых хранилищ под FreeBSD, Linux (через OpenZFS) и Solaris.

Сравнение

Свойство ZFS ext4 btrfs
Контрольные суммы блоков Да Нет Да
Снапшоты Мгновенные Через LVM Мгновенные
Встроенный RAID RAID-Z 1/2/3 Нет RAID 0/1/10
Сжатие LZ4, ZSTD Нет ZLIB, ZSTD
Требования к RAM 1 ГБ на 1 ТБ Минимальные Средние

Кейсы использования

  • NAS на FreeNAS/TrueNAS — RAID-Z2 на 6 дисках держит 2 отказа без потери данных.
  • Бэкап-сервер с дедупликацией — ZFS снимает копию базы за секунды через zfs snapshot.
  • VM-хранилище под Proxmox — снапшоты дисков перед обновлением, откат за минуту.
  • Негативный сценарий: ZFS не любит расширение пула «по одному диску» — нужно сразу добавлять vdev той же конфигурации, иначе производительность падает и появляется риск потери всего пула при отказе нового vdev.

Технические детали

zpool create tank raidz2 sda sdb sdc sdd sde sdf
zfs create -o compression=lz4 -o atime=off tank/data
zfs snapshot tank/data@daily-$(date +%F)
zfs send tank/data@daily-2026-05-11 | ssh backup zfs recv pool/backup
zpool scrub tank && zpool status tank

Скраб (scrub) проверяет контрольные суммы всех блоков и автоматически чинит ошибки, если есть избыточность. Для арендованных VPS с одним диском ZFS избыточен — выгодно ставить от трёх дисков. ARC-кэш в RAM ускоряет случайное чтение в десятки раз.

Частые вопросы

Сколько RAM нужно для ZFS?

Базово 1 ГБ на 1 ТБ ёмкости пула без дедупликации. С дедупликацией требования вырастают до 5 ГБ на 1 ТБ.

ZFS работает на Linux?

Да, через проект OpenZFS. Стабильно на Ubuntu 22.04+, Debian 12, AlmaLinux 9. На Ubuntu есть установка из коробки при разметке корня.

Можно ли расширить RAID-Z добавлением одного диска?

До OpenZFS 2.3 нельзя — добавляли только новый vdev. С версии 2.3 появилась поддержка raidz expansion, но процесс длится сутки.