
Избыточность защищает от отказа диска завтра. Она не защищает от файла, который потерял бит шесть месяцев назад и был переписан во все копии в пуле, прежде чем кто-либо это заметил. Незаметная повреждение данных, иногда называемая bitrot, — это тихий режим отказа, который RAID и зеркальные томы никогда не были разработаны для обнаружения. Поэтому каждая серьёзная установка NAS слоёт график очистки и файловую систему с контрольными суммами под хранилищем.
Мы изучили восемь настольных приложений и инструментов файловых систем, которые реально работают на домашней лаборатории или NAS небольшого офиса для поддержания проверок целостности по расписанию. Некоторые — полные операционные системы с очисткой как запланированная задача, некоторые — утилиты в пространстве пользователя, которые добавляют чётность к существующему каталогу, а одна — графическая оболочка для файловой системы, которая уже всё проверяет суммами.
Что искать в инструменте проверки целостности данных
Функции, которые здесь имеют значение, не те, которые подчёркивает маркетинговая страница:
- Контрольные суммы на уровне блоков. Файловая система записывает хеш для каждого блока и сравнивает его при чтении. Без этого повреждение невидимо.
- Запланированные очистки. Еженедельная или ежемесячная работа, которая проходит каждый блок и проверяет его контрольную сумму. Ручные очистки забываются.
- Автоматическое восстановление. Когда несоответствие контрольной суммы обнаруживается на зеркальном или томе с чётностью, инструмент перезаписывает хорошую копию вместо плохой.
- Уведомления по электронной почте или webhook. Тихая очистка, которая находит проблему и сообщает о ней только в файл журнала — это очистка, которая вас удивит.
- Снимки состояния. Снимки на момент времени, которые позволяют вам откатиться, если повреждение обнаружено до его распространения.
- Поддержка нескольких файловых систем. Не все могут пересчитать пул. Инструменты, которые добавляют чётность или хеширование к существующему тому ext4 или NTFS, имеют значение для существующих установок.
Быстрое сравнение
| Приложение | Файловая система | Авторемонт | Запланированная очистка | Бесплатный план |
|---|---|---|---|---|
| TrueNAS Scale | OpenZFS | Да | Да (GUI) | Полное приложение, бесплатно |
| OpenZFS | OpenZFS | Да | Да (cron) | Бесплатно, открытый исходный код |
| Btrfs | Btrfs | Только зеркало | Да (systemd) | Бесплатно, включено в ядро |
| SnapRAID | Любая (добавляет чётность) | Да (из чётности) | Да (скрипт) | Бесплатно, открытый исходный код |
| Restic | Любая (резервная копия) | Нет (только проверка) | Да (скрипт) | Бесплатно, открытый исходный код |
| Duplicati | Любая (резервная копия) | Нет (только проверка) | Да (GUI) | Бесплатно, открытый исходный код |
| Unraid | XFS с чётностью | Да (из чётности) | Да (GUI) | Платная лицензия |
| Btrfs Assistant | Btrfs | Только зеркало | Да (GUI) | Бесплатно, открытый исходный код |
1. TrueNAS Scale — лучший выбор для полной ОС NAS с интегрированной очисткой
TrueNAS Scale — это ОС NAS на основе OpenZFS, которую большинство имеет в виду, говоря “очистить пул”. Веб-интерфейс имеет запланированную задачу очистки, оповещения по электронной почте или webhook и одноклассовое восстановление при замене диска. Поскольку ZFS проверяет каждый блок суммой, очистка — это то, что превращает незаметное повреждение в зафиксированное и отремонтированное событие.
Где это отстаёт: пересчёт пула для переключения с Btrfs или ext4 на ZFS означает перемещение данных туда и обратно. Это не лёгкое изменение.
Цены:
- Бесплатно и открытый исходный код.
- Дополнительно TrueNAS Enterprise для платной поддержки.
Загрузить: truenas.com/download-truenas-scale
Итог: стандартный ответ для новой сборки NAS, где диски в вашем распоряжении.
2. OpenZFS — лучший выбор для добавления ZFS на существующий Linux-сервер
OpenZFS — это файловая система под TrueNAS, и она работает на любом дистрибутиве Linux, который может загрузить модуль ядра. Управление очисткой — это работа zpool scrub tank в cron, а состояние отображается в zpool status. Каждый блок несёт контрольную сумму SHA-256 или Fletcher, поэтому очистка находит и восстанавливает повреждение автоматически, когда существует избыточная копия.
Где это отстаёт: нет GUI в базовой установке. Требуется комфорт в командной строке.
Цены:
- Бесплатно и открытый исходный код под CDDL.
Загрузить: openzfs.org
Итог: правильный уровень, если Linux-сервер уже существует и добавление пула ZFS проще, чем миграция на ОС NAS.
3. Btrfs — лучший выбор для включённой в ядро файловой системы с контрольными суммами
Btrfs поставляется в каждом основном ядре Linux и делает ту же работу, что и ZFS на меньшем наборе функций. Включите проверку суммы (по умолчанию), запланируйте btrfs scrub start /mnt/pool как таймер systemd, и файловая система проходит каждый блок по расписанию и сообщает о несоответствиях. На зеркальных или томах RAID1 она восстанавливает из хорошей копии.
Где это отстаёт: RAID5 и RAID6 по-прежнему не рекомендуются для production. Придерживайтесь single, mirror или RAID10 профилей.
Цены:
- Бесплатно и включено в ядро Linux.
Загрузить: btrfs.readthedocs.io
Итог: для пользователей Linux, которые хотят проверку суммы без выхода из ядра или установки стороннего модуля.
4. SnapRAID — лучший выбор для чётности над существующим массивом смешанных дисков
SnapRAID — это инструмент, который сделал JBOD домашние лаборатории жизнеспособными. Он сидит поверх любой файловой системы (ext4, XFS, NTFS, Btrfs) и вычисляет чётность между набором дисков данных и набором дисков с чётностью. snapraid sync записывает чётность, snapraid scrub проходит массив и проверяет хеши, а snapraid fix восстанавливает повреждённые файлы из чётности.
Где это отстаёт: чётность свежа только так, как последняя синхронизация. Файлы, изменённые после последней синхронизации, не защищены до следующего запуска.
Цены:
- Бесплатно и открытый исходный код под лицензией GPL.
Загрузить: snapraid.it
Итог: основной вариант для добавления, когда диски разные размеры и замена файловых систем не вариант.
5. Restic — лучший выбор для проверенных резервных копий на любое хранилище
Restic — это инструмент резервного копирования со встроенным эквивалентом очистки: restic check --read-data проходит каждый пакет в репозитории, проверяет контрольную сумму и сообщает о несоответствиях. Он создаёт резервные копии на локальные диски, SFTP, S3, Backblaze B2 и Rest Server, и каждая резервная копия дедублицирована и адресуется по содержанию.
Где это отстаёт: оно проверяет резервные копии, не исходные данные. Повреждение на основном томе по-прежнему требует инструмента файловой системы для обнаружения.
Цены:
- Бесплатно и открытый исходный код под BSD-2.
Загрузить: restic.net
Итог: используйте его с файловой системой, проверяющей суммы, для двухслойной защиты: файловая система для живых данных, restic для копии резервной копии.
6. Duplicati — лучший выбор для проверенного резервного копирования, управляемого GUI
Duplicati охватывает то же самое, что и Restic, с веб-интерфейсом, планировщиком и поддержкой более широкого диапазона удалённых назначений, включая Google Drive, OneDrive и Dropbox. Функции проверки соединения и проверки удалённого расположения выполняют проверки целостности зашифрованного архива после каждой резервной копии.
Где это отстаёт: движок запросов может быть медленным на очень больших репозиториях.
Цены:
- Бесплатно и открытый исходный код под LGPL.
Загрузить: duplicati.com
Итог: правильный выбор для людей, которые хотят запланированное проверенное резервное копирование с GUI, без скриптов.
7. Unraid — лучший выбор для платной ОС NAS с чётностью и Docker
Unraid — это коммерческая ОС NAS, которая взяла подход SnapRAID и обёрнула его в полированный веб-интерфейс, экосистему плагинов и поддержку Docker и VM первого класса. Чётность вычисляется при записи, ежемесячная проверка чётности очищает массив, и панель оповещений выявляет ошибки битов, прежде чем они имеют значение.
Где это отстаёт: платная лицензия за сервер. Не открытый исходный код.
Цены:
- Базовая, Plus и Pro лицензии, одноразовая покупка с пожизненными обновлениями по старым лицензиям. Последние версии перешли на годовое возобновление обновлений.
Загрузить: unraid.net
Итог: для людей, которые хотят смешанную чётность дисков SnapRAID без stitching вместе инструментов самостоятельно.
8. Btrfs Assistant — лучший выбор для GUI поверх Btrfs очистки
Btrfs Assistant — это Qt front-end для администрирования Btrfs, который превращает планирование очистки, управление снимками состояния и операции балансирования в флажки. Он выставляет те же инструменты, которые поставляются с ядром, поэтому ничего под капотом не меняется, и это делает вопрос “я запланировал ежемесячную очистку?” проверкой в один клик.
Где это отстаёт: только Linux, и макет плотный для пользователей Btrfs в первый раз.
Цены:
- Бесплатно и открытый исходный код под лицензией GPL.
Загрузить: github.com/btrfs-assistant/btrfs-assistant
Итог: установите на систему Btrfs, которая работает на Plasma или GNOME, и перестаньте редактировать crontabs.
Как выбрать правильный
Для свежей сборки NAS установите TrueNAS Scale и позвольте GUI обрабатывать график очистки. Для Linux-сервера, который уже существует, добавьте ZFS с OpenZFS, если диски совпадают, или SnapRAID, если они не совпадают. Для домашней лаборатории, которая работает с Docker и хочет отполированный коммерческий опыт, Unraid — это платный путь. Если файловая система остаётся на месте, но резервные копии нуждаются в проверке, Restic или Duplicati добавляет проверку. Btrfs Assistant охватывает случай, когда пул уже Btrfs и отсутствующей частью является более удобный планировщик.
FAQ
Какой лучший бесплатный инструмент целостности NAS?
TrueNAS Scale для полной ОС, OpenZFS или Btrfs для добавления проверки суммы на существующий Linux-сервер и SnapRAID, когда диски не совпадают и перемещение данных не вариант.
Как часто я должен очищать свой NAS?
Еженедельная очистка является общей для потребительских дисков, ежемесячно для дисков корпоративного класса. TrueNAS по умолчанию ежемесячно с пороговой частотой, которая пропускает, если предыдущая очистка достаточно свежая.
Защищает ли RAID от незаметного повреждения данных?
Традиционный RAID не защищает. Он защищает от отказа целого диска, но не имеет способа узнать, какая копия зеркала правильная, если две не совпадают. Файловые системы с проверкой суммы (ZFS, Btrfs) закрывают этот пробел.
В чём разница между очисткой и восстановлением?
Очистка читает каждый блок и проверяет его контрольную сумму. Восстановление пересчитывает заменённый диск из других копий. Оба находят повреждение, но только очистка — это операция запланированного обслуживания.
Могу ли я добавить проверки целостности на существующий том NTFS или ext4?
Да, с SnapRAID для чётности или Restic и Duplicati для резервных копий с хешем содержания. Сам том не получит проверку суммы на уровне блока без перемещения на Btrfs или ZFS.