Dubletten-Suche (mehrere Terabyte)

hardwärevreag

Commander
Registriert
Mai 2006
Beiträge
3.033
Hi,

ich habe hier mehrer Terapyte Dateien (>130.000, 3,10 TB im Moment). Ein Viertel/Hälfte (geschätzt) sind Dubletten. Da es sich um Backups handelt, will ich einfach nur, dass sie weg sind. Wie mache ich das am besten. Da Dateinamen geändert sein können, würde sich eine hash-basierte Vorgehensweise eignen (?).

Alle Tools, doe ich bisher probiert habe, freezen einfach nur. Wie kann man dem Problem (evtl. auch iterativ) Herr werden? Gibt es Software, die evtl. die Grafikkarte nutzen kann (OpenCL)?

Also: Bahn frei für Vorschläge.
 
Wäre schön, wenn du eine Liste mit den ganzen Tools hättest, die du ausprobiert hast, sonst wird das hier ziemlich uneffizient.
 
Die Nutzung von Grafikeinheiten wird dir nichts bringen. Der Flaschenhals ist der Massenspeicher. Bei der Berechnung von Hashes wird für gewöhnlich die gesamte Datei analysiert. Ich könnte mir vorstellen, dass man dies vereinfachen könnte indem man den Hash jeweils nur über die sagen wir ersten 10MB erstellt. Das sollte das ganze enorm beschleunigen.

Hast du mal Linux Tools probiert? Könnte zwar eine Weile dauern, wenn dort komplette Hash Values berechnet werden, aber die Befehle sind prinzipiell einfach: http://www.tecchannel.de/server/linux/2032466/workshop_shell_scripting_fuer_linux/index7.html
 
Die Anwendung dürfte nicht CPU-beschränkt sein, daher hilft eine Grafikkarte wenig bis gar nicht. Ich weiß allerdings nicht, was mit "freeze" überhaupt gemeint ist. Das Durchsuchen solch einer Datenmenge dauert halt eine halbe Ewigkeit. Wenn die Hälfte Dubletten sind, dann müssen für das Ermitteln davon auch mindestens für diese Menge Hashes ermittelt werden. Alleine das dürfteim Zeitrahmen von 7-8 Stunden liegen, wenn man mal normale Festplatten-Dauertransferrate annimmt.

Ich verwende zur Dubletten-Bereinigung das entsprechende Tool in Directory Opus. Das vermeidet durch Hinweis meinerseits die Ermittlung von Hashes, so lange nicht mindestens eine zweite Datei die gleiche Größe hat. Ich weiß allerdings nicht, wann das in den Code gewandert ist. In Version 9 war es auf jeden Fall schon drin. Das Programm ist allerdings kommerziell und nur für diese eine Problematik eventuell zu teuer. Es erledigt die Aufgabe aber sauber und zuverlässig.
 
Die Dateien liegen auf einem Netzlaufwerk, dass beim Kopieren 30 MiB/s halten kann.

Freezen: Ich benutze Windows 7. Zeitanzeige läuft nicht weiter, "Kreis" erscheint, Zählung der Dateien bleibt bei 4000 oder so stecken.

@Linux: Nein. Habe auch keinen leistungsfähigen Rechner mit Linux da, sondern nur ein Notebook. Das mit den ersten 10 MB klingt gut, aber welches Prog. macht das?

Tools:

Dupemaster
Anti-dupe
Duplicate File Eraser

Ich hab im PC 16GB RAM+Quad, daran wird das Freezen also nicht liegen und wenn lässt sich das nicht beheben ... Ich habe mir die Dateien mal so stichpunktartig angeguckt und ich glaube, dass da so um die 1 TB auf jeden Fall Dubletten sind. ... Wäre also toll, wenn es ne Möglichkeit gäbe ...

Ich habe mal kurz gerechnet:

Ich bräuchte einen Tag um die Dateien einzulesen und ich stelle den Rechner ja auch aus. Es wäre gut, wenn man das PRogramm pausieren könnte. :). Muss auch nicht Freeware sein. Ich habe da noch ein Megaverzeichnis, was sich freuen würde.
 
werde ich machen, auch opus teste ich - morgen. Wer noch Anregungen hat - ich melde mich morgen zurück
 
Wenn die Daten auf einem Fileserver liegen, kannst du ja mal überlegen, das ganze lokal vom Fileserver erledigen zu lassen. Dann müssen die Daten nicht mühsam auf den Windows-Client übertragen werden und der Client muss auch nicht die ganze Zeit dabei laufen.

Ich würde es mit fdupes versuchen. Das ist in den Paketquellen aller gängigen Linux-Distribution enthalten und auch für viele Embedded Systeme gibt es Pakete (z.B. Optware).

Könnte z.B. so aussehen:
Code:
[user@server~]$ fdupes -r /var/stuff > duplikate.txt
Progress [3145/4719] 66%
 
Zuletzt bearbeitet:
Hallo,
manchen Programmen ist es egal welche Dateiendung/Dateinamen die Dateien haben.
Aber Backups sollte man zumindest 1x Monatlich aus den letzten 5 Jahren aufheben.

Ich habe als Sammler auch das Problem und ein paar Programme installiert.
Wichtig ist mir dass man das Suchergebnis speichern und mehrere Pfade angeben kann.
Auf GPU habe ich bisher keinen Wert gelegt.

Obwohl manche Programme sich aufhängen sollte man ihnen eine Chance geben.
Vielleicht haben sie die Aufgabe am Ende trotzdem erledigt.
Ich würde die Suche etwas eingrenzen z.B. nur bestimmte Pfade, nur bestimmte Endungen, nur bestimmte Größen.
Ich wollte auch immer alles auf einmal vergleichen aber mit Filtern hängt es sich nicht mehr auf.

Derzeit installierte Programme:
DupKiller (Speichern möglich, Filter, viele Einstellungen)
Easy Duplicate Finder (Speichert Einstellungen beim beenden, Byte-by-Byte oder CRC32)
CloneSpy (Log möglich, Suchoptionen, 2 Pools)
AIDeX Anti-Twin (Ergebnis nur Exportieren, Ergebnis begrenzbar, Filter)

Aber wie Troublegum schreibt ist es eventuell doch das beste das direkt auf dem System zu machen.
Vor allem bei sparsamen NAS die durch so etwas zu sehr ausgelastet werden.
Da ist es mit Shell-Befehlen weniger/effizienter ausgelastet.

Und mit dem Programm Tail for Win32 kann man sich mit "Beep on changes" akustisch benachrichtigen lassen wenn etwas gefunden wird.
 
Antitwin ist auch sehr efektiv und kann auch bit für bit vergleiche
 
Bin grad noch an der Uni. Der NAS ist von Synology und würde wohl Jahrhunderte brauchen, um das zu rechnen. Weiß einer wie die Offshore-Leaks auf Dupes untersucht wurden? Das waren ja 2,5 Mio Dateien. Das Programm würde ich dann auch benutzen :)
 
Ach wunderbar. Auf den Synology NAS ist das oft wunderbar möglich. Klar ist dein Desktop-PC sehr viel schneller, aber der muss ja erstmal die Daten kopieren und bei 30 MB/s und 3TB dauert alleine das Übertragen der Daten über 24h.
Wäre für mich ein Argument, die Arbeit dem NAS zu überlassen, weil ich dann nicht ewig den PC laufen lassen müsste sondern das Programm auf dem NAS starte und dann gemütlich aus dem Haus gehen kann. :)

Hast du denn auf deinem Synology schonmal mit SSH und zusätzlichen Paketen (z.B. Optware/ipkg) gearbeitet? Wenn nein, dann ist die Suche mit deinem Windows PC wahrscheinlich einfacher. :)

Was meinst du mit Offshore-Leaks?
 
Bzgl. Offshore-Leaks: https://www.google.de/search?q=offs...ome.0.57j62l3.1909j0&sourceid=chrome&ie=UTF-8

Politische Bildung!

Aus einer Quelle weiß ich, dass 40% der Daten schließlich Dubletten waren.

@Synology-NAS: Ich habe den DS413j, da ist ein 1,6 GHz ARM-Chip drin mit 512 MB RAM. Die CPU ist schon ausgelastet, wenn man überhaupt mal auf die Daten zugreifen will und nebenher noch ein paar serverlein laufen hat. Also ich werde das mit windows machen. ICh habe keinen +-NAS mit Intel Atom, sondern was Günstiges, Stromsparendes.

Ich werde die Tipss jetzt abarbeiten und berichten ...
 
Ich würde zum Suchen vorher alle Dienste deaktivieren.
Man sollte dem Vorschlag von Troublegum eine Chance geben, vielleicht läuft das in wenigen Stunden durch.

In einem zweiten Shell Fenster/Befehl screen mit tail -f -n 15 duplikate.txt sieht man wie schnell Dateien gefunden werden.
 
Zuletzt bearbeitet:
Was willst du denn für ein "Programm"? Wer sagt dir denn, dass die das mit Windows kontrolliert haben? Jedes Linux System kann dir "ganz einfach" mit zwei Befehlen einmal ein Hash über alle Dateien in einer Liste schreiben und dann diese Dateiliste auf doppelte Einträge suchen. Einer ordentlicher Anwendung ist es auch total egal ob es 10 oder 10 Milliarden Dateien sind. Die Datei wird halt ein bisschen größer, ist aber gar kein Problem.
 
Jo, habe mit anti-twin in 5 durchläufen 150 GB dubletten aussortiert. Zu wenige, aber irgendwie findet er nicht mehr ... obwohl mehr da sind ...
 
Dazu kann man nur Stellung beziehen, wenn man weiß wie die Software läuft. Kontrolliert sie z.B. primär das Datum ist es schon sehr problematisch. So könnten die Datenangaben falsch/unterschiedlich sein. Noch schlimmer ist, wenn das Dateisystem (wie z.B. NTFS) bei jeder "Betrachtung" einen "touch" auf die Datei ausführt und damit ein Teil des Datums ändert.
 
Ich bin bzw. war auch seit einiger Zeit auf der Suche nach wirklich guten Tools.

Duplicate File Detective 4.0

Kann ich absolut empfehlen, da es bis zu einer 512Bit Hash Prüfung nutzt. Ich konnte bereits etliche zig GB bereinigen. Zumdem nutzt es 64-Bit nativ - wodurch es auch sehr schnell arbeitet.

Einziger Nachteil es ist nur in englisch und relativ teuer (aber sein Geld wert!)

Hier spart man immerhin 30%

http://www.bitsdujour.com/software/duplicate-file-detective

Hier ist die Hauptwebseite:
http://www.duplicate-file-detective.com/

FolderSizes Professional Edition ist von der gleichen Firma und ebenfalls eine Top-Empfehlung!

http://www.bitsdujour.com/software/foldersizes
bzw.
http://www.foldersizes.com/

Tip: wenn man FolderSizes Professional Edition gebrauchen kann bekommt man für 20$ Aufpreis Duplicate File Detective dazu - so habe ich es gekauft.

Auch sonst kann man sehr viel anpassen - für meine Zwecke eigentlich Oversized,
aber wenn es um "Daten" geht kann ein Programm nicht gut genug sein.

Directory Opus wirkt da schon sehr sehr eingeschränkt in den Möglichkeiten,
überhaupt kein Vergleich (aber ist ja auch nicht das Hauptaufgabengebiet).

Edit: 400GB Daten werden auch in sehr kurzer Zeit eingelesen selbst mit 512Bit - bei späteren neu Scans des Datenträgers dauert ein neuer Ableich nur wenige Sekunden (600GB VelociRaptor).

BTW: da ich zur Zeit Opus gerade teste bin ich auch hier auf das kommende 50% Rabatt Angebot gestoßen - für den Preis absolut Top!

http://www.bitsdujour.com/software/directory-opus-10

Wie gesagt nur etwas warten - der Deal kommt!
 
Zuletzt bearbeitet:
Zurück
Oben