ZFS на Linux: снапшоты, пулы и восстановление данных
ZFS — файловая система и менеджер томов, объединяющие в себе защиту от потери данных, сжатие, снапшоты и репликацию. Она идеально подходит для домашнего NAS, сервера резервных копий и любых задач, где данные дороже дискового пространства. В Linux ZFS доступен через OpenZFS и хорошо интегрирован в Ubuntu и Mint.
Установка и создание пула
Установите пакеты OpenZFS и заголовки ядра, затем создайте пул на одном или нескольких дисках.
sudo apt install zfsutils-linux
sudo zpool create tank /dev/sdb
sudo zfs create tank/data
sudo zfs set compression=lz4 tank/data
Проверьте состояние: zpool status tank. Сжатие lz4 практически не влияет на производительность и экономит место.
Снапшоты: главная суперсила ZFS
Снапшот создаётся мгновенно и не занимает места до изменения данных. Это идеальный инструмент перед рискованными операциями.
sudo zfs snapshot tank/data@before-upgrade
# откат при необходимости
sudo zfs rollback tank/data@before-upgrade
Список снапшотов: zfs list -t snapshot. Удаление старого: zfs destroy tank/data@old.
Автоматические снапшоты
Утилита sanoid позволяет настроить политику: хранить почасовые снапшоты за сутки, дневные за месяц, месячные за год. Установите sanoid из репозитория и отредактируйте /etc/sanoid/sanoid.conf, затем добавьте задачу в cron или systemd-таймер.
Репликация и резервное копирование
Передать снапшот на другой сервер можно потоком: zfs send tank/data@snap | ssh backup zfs receive backup/data. Для инкрементальной репликации используйте -i с предыдущим снапшотом. Это даёт надёжное, проверяемое резервное копирование без сторонних утилит.
Что учесть перед внедрением
- ZFS требует оперативной памяти: правило — 1 ГБ на 1 ТБ данных, минимум 4 ГБ для комфортной работы.
- Не используйте аппаратный RAID под ZFS — отдавайте диски напрямую.
- Для загрузочного пула в Mint/Ubuntu нужна UEFI-установка и отдельный ESP.
Начните с некритичных данных, освойте снапшоты и только потом переносите важное. ZFS прощает ошибки, но требует понимания своих принципов.




