Sanoid

L’avertissement de XDA selon lequel tes snapshots NAS sont probablement désactivés est la bonne approche. La redondance n’est pas une sauvegarde, et un snapshot ZFS dans le même pool n’en est pas une non plus. Une mauvaise commande zfs destroy supprime toujours le snapshot. Une véritable sauvegarde de snapshots ZFS signifie des snapshots automatisés selon une politique, plus une réplication asynchrone vers une cible que le désastre ne peut pas atteindre. Ce sont les meilleures applications pour la sauvegarde de snapshots ZFS sur ordinateur de bureau que nous avons testées pour les snapshots pilotés par politique et la réplication hors site.

Nous avons testé sur TrueNAS SCALE 25, Ubuntu 24.04 et un hôte Proxmox VE 8.4, chacun avec un pool OpenZFS contenant environ 12 To de données. Le temps de récupération et les frais administratifs étaient les métriques qui nous intéressaient. Installer un outil qui génère des snapshots que tu n’as jamais restaurés est le même mode d’échec que de ne pas avoir d’outil du tout.

Ce qu’il faut rechercher dans un outil de sauvegarde de snapshots ZFS

Recherche un modèle de planification qui s’exécute sur les minuteurs cron ou systemd, afin de ne pas avoir un démon personnalisé à maintenir en vie. Des politiques de rétention qui amincissent automatiquement les snapshots, sinon tu manqueras d’espace libre du pool en trois mois. Une réplication incrémentale via zfs send | zfs recv, idéalement avec support de reprise après une perte de réseau. Réplication chiffrée pour les cibles hors site sur lesquelles tu ne fais pas complètement confiance. Des hooks de surveillance qui t’avertissent lorsqu’un snapshot échoue, car un pipeline cassé dont tu n’as pas conscience est pire que l’absence totale de pipeline.

Comparaison rapide

Application Meilleur pour Plateformes Plan gratuit Coût Note
Sanoid & Syncoid La plupart des laboratoires domestiques et petites entreprises Linux, FreeBSD Oui Gratuit Choix de l’éditeur
zrepl Grands déploiements Linux, FreeBSD Oui Gratuit Très positif
TrueNAS Replication Utilisateurs TrueNAS TrueNAS CORE / SCALE Oui Gratuit Très positif
pyznap Simplicité du fichier de configuration Linux Oui Gratuit Positif
znapzend Configurations Solaris héritées Solaris, illumos, Linux Oui Gratuit Positif
OpenZFS built-in tools Sauvegardes ponctuelles Linux, FreeBSD, TrueNAS Oui Gratuit Ligne de base
Rclone with zfs send Réplication cloud Linux, Windows, macOS Oui Gratuit Positif

Les applications

1. Sanoid & Syncoid, meilleur pour la plupart des laboratoires domestiques et petites entreprises

Sanoid est un démon de gestion des snapshots piloté par politique qui s’exécute selon un calendrier, crée des snapshots selon ta configuration de rétention et supprime automatiquement les anciens snapshots. Syncoid est son homologue de réplication, un wrapper autour de zfs send | zfs recv qui gère les envois incrémentiels, le transport SSH avec compression et la mise en mémoire tampon mbuffer pour éviter les blocages d’E/S.

Où il est défaillant: Pas d’interface graphique, et la configuration réside dans un fichier INI en texte brut. La configuration initiale prend quelques heures pour te sentir en confiance. Pas de cible cloud de série, bien que le transport basé sur SSH couvre la plupart des scénarios hors site.

Tarification:

Plateformes: Linux, FreeBSD

Télécharger: github.com/jimsalterjrs/sanoid

En conclusion: Sanoid et Syncoid pour la sauvegarde de snapshots ZFS est ce que nous exécutons en production. Neuf laboratoires domestiques sur dix n’ont besoin de rien d’autre.

2. zrepl, meilleur pour les grands déploiements avec de nombreuses cibles

zrepl est le plus puissant des outils de cette liste, mais le coût est la complexité. Il est conçu pour les flottes: de nombreux pools sources se répliquant vers de nombreuses cibles, avec réplication en mode tirage pour les environnements protégés par pare-feu, et des politiques de rétention par travail.

Où il est défaillant: Plus compliqué pour commencer car un fichier de configuration est nécessaire même pour un simple transfert. La documentation est complète mais dense.

Tarification:

Plateformes: Linux, FreeBSD

Télécharger: zrepl.github.io

En conclusion: zrepl pour la sauvegarde de snapshots ZFS à grande échelle. Si tu gères une baie, c’est ton outil.

3. TrueNAS Replication, meilleur pour les utilisateurs TrueNAS

TrueNAS Replication est le snapshot intégré et la réplication pilotée par l’interface web dans TrueNAS CORE et SCALE. Politiques pointer-cliquer, planification basée sur le calendrier et une liste de tâches de réplication que tu peux regarder en temps réel.

Où il est défaillant: Utile uniquement si tu es sur TrueNAS. L’outillage sous-jacent utilise les mêmes primitives OpenZFS avec un wrapper.

Tarification:

Plateformes: TrueNAS CORE, TrueNAS SCALE

Télécharger: Livré avec TrueNAS. Voir la documentation de réplication TrueNAS.

En conclusion: Si tu utilises TrueNAS, utilise la réplication intégrée avant d’installer autre chose. C’est déjà là.

4. pyznap, meilleur pour la simplicité du fichier de configuration

pyznap est une réimplémentation Python des idées de Sanoid/Syncoid avec un fichier de configuration légèrement plus convivial. Snapshots et réplication en un seul binaire, configuration de style INI, sans complexité par cible.

Où il est défaillant: Communauté plus petite que Sanoid. Le rythme de développement est plus lent.

Tarification:

Plateformes: Linux

Télécharger: github.com/yboetz/pyznap

En conclusion: Une alternative Sanoid parfaitement bonne si l’écosystème basé sur Perl ne te convient pas.

5. znapzend, meilleur pour les configurations Solaris héritées

znapzend remonte à l’époque Solaris et fonctionne toujours sur illumos, FreeBSD et Linux. Son langage de politique de rétention est légendaire pour sa précision.

Où il est défaillant: Base de code plus ancienne, développement tranquille, moins d’utilisateurs actifs que Sanoid ou zrepl.

Tarification:

Plateformes: Solaris, illumos, Linux

Télécharger: github.com/oetiker/znapzend

En conclusion: Héritage mais toujours capable. Migre vers Sanoid ou zrepl pour une nouvelle construction.

6. Outils intégrés OpenZFS, meilleur pour les sauvegardes ponctuelles

OpenZFS est livré avec tout ce dont tu as besoin: zfs snapshot crée un snapshot, zfs send produit un flux, zfs recv en accepte un de l’autre côté, zfs list -t snapshot inspecte. Connecte-les ensemble avec un travail cron et tu as un pipeline de sauvegarde basique.

Où il est défaillant: Pas de politique de rétention, pas de récupération d’erreur, pas de surveillance. Tu écriras tes propres scripts.

Tarification:

Plateformes: Linux, FreeBSD, TrueNAS, illumos

Télécharger: openzfs.org

En conclusion: Bien pour une utilisation ponctuelle. Pas une solution de sauvegarde en soi.

7. Rclone avec zfs send, meilleur pour la réplication cloud

Rclone ne comprend pas ZFS nativement, mais tu peux canaliser zfs send vers lui et diffuser le résultat vers Backblaze B2, Wasabi ou un stockage compatible S3. Des scripts communautaires existent pour faire cela sans surveillance.

Où il est défaillant: Perdre la sémantique des snapshots du côté du cloud. Tu stockes un flux brut, et la restauration signifie télécharger l’intégralité du flux et le zfs recv-ing.

Tarification:

Plateformes: Linux, Windows, macOS

Télécharger: rclone.org

En conclusion: Le bon choix lorsque ta seule cible hors site est le stockage d’objets cloud.

Comment choisir le bon

Si tu utilises TrueNAS, utilise d’abord TrueNAS Replication. C’est déjà installé et l’interface web cache les parties délicates.

Si tu utilises Linux ou FreeBSD avec un laboratoire domestique, installe Sanoid et Syncoid. C’est le point optimal pour le rapport caractéristique-à-effort.

Si tu gères 20 pools sources ou plus, zrepl vaut la peine de la courbe d’apprentissage du fichier de configuration.

Si les allergies au Perl se manifestent autour de Sanoid, pyznap est un remplacement d’idée.

Si tu es sur Solaris ou illumos hérité, znapzend connaît déjà ta plate-forme.

Si le stockage d’objets cloud est ta seule cible hors site, connecte Rclone à un pipeline zfs send.

FAQ

Les snapshots ZFS ne sont-ils pas déjà des sauvegardes?

Non. Un snapshot dans le même pool te protège d’un rm -rf accidentel mais pas d’une défaillance du pool, d’un feu de la carte RAID ou d’un zpool destroy mal exécuté. La sauvegarde signifie que les données vivent dans un pool différent, idéalement dans un endroit physique différent.

À quelle fréquence dois-je prendre des snapshots ZFS?

Pour la plupart des laboratoires domestiques, toutes les heures au cours du dernier jour, quotidiennement au cours de la dernière semaine, hebdomadairement au cours du dernier mois, mensuellement au cours de la dernière année. Sanoid est livré avec ces valeurs par défaut dès le départ.

Sanoid peut-il se répliquer vers le stockage cloud?

Pas directement. Sanoid gère les snapshots et Syncoid gère la réplication via SSH. Pour le stockage d’objets cloud, canalise zfs send via Rclone. La réplication intégrée de TrueNAS prend maintenant en charge les cibles cloud dans SCALE.

ZFS chiffré fonctionne-t-il avec ces outils?

Oui. Syncoid prend en charge la réplication brute des ensembles de données chiffrés avec l’indicateur --sendoptions=w. Le serveur de sauvegarde stocke le texte chiffré et ne peut pas lire les données sans la clé de chiffrement.

Quelle est la différence entre zrepl et Sanoid?

zrepl utilise son propre protocole et peut tirer la réplication à travers les pare-feu, ce qui est utile dans les configurations d’entreprise. Sanoid utilise le transport SSH standard et une configuration plus simple. Pour la plupart des gens, Sanoid suffit.