Vous cherchez de nombreux outils de déduplication sous Linux, voir par exemple cette page wiki .
Presque tous les scripts effectuent uniquement la détection, l'impression des noms de fichiers en double ou la suppression des fichiers en double en les reliant en dur à une seule copie.
Avec la montée en puissance de btrfs, il y aurait une autre option: créer une copie CoW (copie sur écriture) d'un fichier (comme cp reflink=always
). Je n'ai trouvé aucun outil qui le fasse, quelqu'un est-il au courant de l'outil qui le fait?
btrfs
deduplication
Peter Smit
la source
la source
Réponses:
J'ai écrit bedup à cet effet. Il combine l'analyse btree incrémentielle avec la déduplication CoW. Idéal pour Linux 3.6, où vous pouvez exécuter:
la source
J'ai essayé de dormir. Bien qu'il soit bon (et possède des fonctionnalités différenciées utiles qui peuvent en faire le meilleur choix pour beaucoup), il semble analyser l'intégralité de tous les fichiers cibles pour les sommes de contrôle.
Ce qui est douloureusement lent.
En revanche, d'autres programmes, tels que rdfind et rmlint, analysent différemment.
rdfind a une fonctionnalité "expérimentale" pour utiliser le reflink btrfs. (Et des options "solides" pour les liens physiques, les liens symboliques, etc.)
rmlint a des options "solides" pour le clone btrfs, le reflink, les liens physiques réguliers, les liens symboliques, la suppression et vos propres commandes personnalisées.
Mais plus important encore, rdfind et rmlint sont nettement plus rapides. Comme dans, des ordres de grandeur. Plutôt que d'analyser tous les fichiers cibles pour les sommes de contrôle, il le fait, environ:
Je connais d'autres avantages de rmlint:
J'ai comparé rmlint avec deduperemove - qui analyse également à l'aveugle tous les fichiers cibles pour les sommes de contrôle. Duperemove a pris plusieurs jours sur mon volume pour terminer (4 je pense), allant complètement. fmlint a pris quelques heures pour identifier les doublons, puis moins d'une journée pour les dédoubler avec le clone Btrfs.
(Cela dit, quiconque fait l'effort d'écrire et de prendre en charge un logiciel robuste et de qualité et le donne gratuitement, mérite des félicitations majeures!)
Btw: Vous devriez éviter à tout prix de dédoublonner en utilisant des liens physiques réguliers comme solution de déduplication "générale".
Bien que les liens physiques puissent être extrêmement pratiques dans certains cas d'utilisation ciblés (par exemple, des fichiers individuels ou avec un outil qui peut rechercher des types de fichiers spécifiques dépassant une certaine taille minimale - ou dans le cadre de nombreuses solutions de sauvegarde / instantané gratuites et commerciales), cela peut être désastreux pour la "déduplication" sur un grand système de fichiers à usage général. La raison en est que la plupart des utilisateurs peuvent avoir des milliers de fichiers sur leur système de fichiers, qui sont identiques en binaire, mais fonctionnellement complètement différents.
Par exemple, de nombreux programmes génèrent des modèles et / ou des fichiers de paramètres cachés (parfois dans chaque dossier qu'il peut voir), qui sont initialement identiques - et la plupart le restent, jusqu'à ce que vous, l'utilisateur, n'en ayez pas besoin.
À titre d'illustration spécifique: les fichiers de cache de miniatures de photos, que d'innombrables programmes génèrent dans le dossier contenant les photos (et pour une bonne raison - la portabilité), peuvent prendre des heures ou des jours pour être générés, mais faire de l'utilisation d'une application photo un jeu d'enfant. Si ces fichiers de cache initiaux sont tous liés ensemble, vous ouvrez ensuite l'application sur un répertoire et il crée un grand cache ... alors devinez quoi: Maintenant, CHAQUE dossier qui a un cache précédemment lié, a maintenant le mauvais cache. Potentiellement, avec des résultats désastreux pouvant entraîner une destruction accidentelle des données. Et aussi potentiellement d'une manière qui explose une solution de sauvegarde qui n'est pas compatible avec les hardlinks.
De plus, cela peut ruiner des instantanés entiers. L'intérêt des instantanés est que la version "en direct" puisse continuer à changer, avec la possibilité de revenir à un état précédent. Si tout est lié entre eux mais ... vous "revenez" à la même chose.
La bonne nouvelle, cependant, est que la déduplication avec le clone / reflink Btrfs peut réparer ces dommages (je pense - car pendant l'analyse, il devrait voir les fichiers liés comme identiques ... à moins qu'il ne soit logique de ne pas considérer les liens durs. Cela dépend probablement de l'utilitaire spécifique faisant la déduplication.)
la source