Je suis à la recherche d'une solution de système de fichiers à copie sur écriture dédupliquée pour les données utilisateur générales telles que /home
et les sauvegardes. Il doit utiliser la déduplication en ligne / en ligne / synchrone au niveau du bloc en utilisant un hachage sécurisé (pour un risque négligeable de collisions) tel que SHA256 ou TTH . Les blocs en double n'ont même pas besoin de toucher le disque.
L'idée est que je devrais pouvoir simplement copier /home/<user>
sur un disque dur externe avec le même système de fichiers pour faire une sauvegarde. Facile. Pas de problème avec les sauvegardes incrémentielles où la corruption de l'un des instantanés interrompra presque toujours tous les instantanés ultérieurs, et pas besoin d'utiliser un outil spécifique pour supprimer ou `` extraire '' un instantané. Tout doit simplement être fait à partir du navigateur de fichiers sans souci. Pouvez-vous imaginer à quel point cela serait facile? Je n'aurais plus jamais à réfléchir à la sauvegarde!
Cela ne me dérange pas un coup de performance, la fiabilité est la principale préoccupation. Bien que, avec des implémentations spécifiques de cp
, mv
et scp
, et un plugin de navigateur de fichiers, ces opérations soient très rapides, surtout lorsqu'il y a beaucoup de duplication car elles n'auraient besoin que de transférer les blocs absents. L'utilisation accidentelle d'outils de copie conventionnels qui ne s'intègrent pas avec le FS prendrait plus de temps, gaspillerait une certaine bande passante lors de la copie à distance et gaspillerait un peu de CPU, car les données en double seraient relues, retransférées et hachées (bien que rien ne soit réécrit), mais ne corromprait absolument rien. (Certains logiciels de partage de fichiers peuvent également bénéficier de l'intégration avec le FS.)
Alors, quelle est la meilleure façon de procéder?
J'ai examiné quelques options:
- lessfs - semble non entretenu. Tout est bon?
- Opendedup / SDFS - Java? Puis-je l'utiliser sur Android?! Que signifie SDFS ?
- Btrfs - Quelques correctifs flottant sur les archives de la liste de diffusion, mais aucun support réel.
- ZFS - Avec un peu de chance, ils reviendront sous licence sous une vraie licence compatible GPL gratuite / Open Source.
Aussi, il y a 2 ans, j'ai tenté une tentative en Python en utilisant Fuse au niveau du fichier pour être utilisé par-dessus un FS solide typique tel que EXT4, mais j'ai trouvé Fuse for Python sous-documenté et je n'ai pas réussi à implémenter tous les appels système.
Réponses:
Cela semble très entreprise (comme cher).
datadomain offre la déduplication des données, et peut-être netapp avec leur système de fichiers wafl. Mais à un coût élevé.
Une alternative "gratuite" pourrait être zfs.
Selon moi, la «meilleure» et la plus alternative Linuxy, bien qu'au niveau du fichier au lieu du «niveau du bloc», serait rsnapshot. Il utilise rsync et hardlinks pour gérer le contrôle de version.
Je fais plutôt confiance à de vieux outils éprouvés qu'à l'utilisation de nouveaux systèmes de fichiers comme Btrfs qui n'existent pas depuis assez longtemps pour que les gens découvrent toutes sortes de bugs.
la source
rsnapshot
n'est pas un système de fichiers, c'est plus un hack pour apporter des fonctionnalités de type instantané aux systèmes de fichiers hérités, ne crée pas de «vrais» instantanés (les instantanés sont censés être atomiques ) et incrémentiel (voir 2e paragraphe). Je préfère utiliser un FS relativement nouveau que quelque chose qui utilise des incrémentaux.Je regarde et j'enquête exactement la même chose, je pourrais suggérer https://attic-backup.org/quickstart.html#automating-backups pour l'instant, semble être simple et bon pour les sauvegardes de linux.
Il y a aussi un bacula avec cette fonctionnalité, mais le grenier semble être assez bon pour la plupart des cas.
la source