facebraker
Goto Top

Hardlinks unter Windows

Hallo, ich probiere gerade ein Tool von Uwe Sieber aus:

FSF V0.8.0 - Find Same File - Suche nach Datei-Duplikaten

FSF sucht nach identischen Dateien in einem oder zwei Pfaden. Gefundene Duplikate können angezeigt, gelöscht oder durch Hardlinks ersetzt werden.
FSF ermittelt zunächst alle Dateigrößen denn nur gleich große Dateien kommen als identisch in Frage. Statt den gesamten Dateiinhalt zu vergleichen, kann man sich auf weniger beschränken, um die Geschwindigkeit zu erhöhen (Parameter -t).
Um gleich große Dateien schneller zu finden, werden die Dateilisten sortiert, deshalb sind sind die Ausgaben nicht nach Verzeichnissen sortiert und sehen somit etwas merkwürdig aus.

http://www.uwe-sieber.de/filetools.html

Was mich jetzt wundert, ich habe es bei Beispieldaten probiert, es kommt die Meldung:

1.4 GB of redundant data found in 1688 files in 8.2 Minutes

Aber wenn ich mir die Größe des Verzeichnisses im Explorer anzeigen lasse, bleibt es unverändert.
Zählt der Explorer die Hardlinks trotzdem mit, wie kann ich überprüfen ob die Datei wirklich ein Hardlink ist?

Danke

Gruß Alex

Content-ID: 194983

Url: https://administrator.de/contentid/194983

Ausgedruckt am: 22.11.2024 um 14:11 Uhr

C.R.S.
C.R.S. 27.11.2012 um 18:34:24 Uhr
Goto Top
Hallo Alex,

interessantes Tool, kannte ich noch nicht.

Jede im Explorer angezeigte "Datei" ist ein Hardlink, der auf eine Datei im Dateisystem verweist. Diese Datei wird (erst) zur Löschung freigegeben, wenn der letzte auf sie verweisende Hardlink gelöscht wird.
Die Dateigrößeninformationen werden jedem Hardlink zugeordnet, also mehrfach gezählt. Der Unterschied zeigt sich bei der Festplattenbelegung.

Grüße
Richard
facebraker
facebraker 27.11.2012 um 19:34:53 Uhr
Goto Top
Hallo Richard,

Das würde ich meine Frage beantworten, habe ich leere Hardlinks(=Datenschrott) wenn ich die Ursprungsdatei lösche ? Weil bei dem Tool weiß ich ja später nicht was der Hardlink und was die Datei war, also brauche ich mir da keine Sorgen machen?

Ich habe das Tool mal auf ein großes Verzeichnis gejagt, da schaue ich morgen mal auf die Festplattenauslastung.

Gruß Alex
C.R.S.
C.R.S. 27.11.2012 um 23:38:12 Uhr
Goto Top
Nein, keine Sorge.

Wenn Du eine neue Datei erstellst, wird die "echte" Datei angelegt und ein erster Hardlink, mit dem das Dateisystem die Datei abbildet. Normalerweise bleibt es bei diesem einen. Wenn weitere Hardlinks hinzugefügt werden, sind die gleichwertig mit dem ersten, und alle können in beliebiger Reihenfolge wieder gelöscht werden. Die Datei ist gelöscht, wenn der letzte Hardlink gelöscht wird.
Dass das Dateisystem eine Datei nicht freigibt, obwohl der letzte Hardlink gelöscht wurde, also der User "die Datei" löschen wollte, kann vorkommen. Das ist aber ein Fehler, der mit dem Gebrauch von Hardlinks nichts zu tun hat und von chkdsk behoben wird.
facebraker
facebraker 28.11.2012 um 12:27:40 Uhr
Goto Top
Hallo Richard,

es ist wirklich so, ich habe das Tool auf 39,7GB Daten losgelassen, nach 12min hat er 6,5GB doppelte Dateien gereinigt und in der Festplattenbelegung fehlen die 6,5GB feine Sache. Theoretisch 1/6.

Ich weiß nicht ob ich das Tool jetzt projektweise auf die Daten loslasse oder nicht, erwarten mich da Probleme?
Hast du es schon ausprobiert?


Gruß Alex
Cthluhu
Cthluhu 28.11.2012 um 14:58:17 Uhr
Goto Top
Hallo facebraker,

Wenn du das Projektübergreifend machen willst, muss ich noch was zu bedenken geben. Am besten gleich als Beispiel:

Projekt1/Vorlage.odt wird von deinem Tool mit Projekt2/Vorlage.odt über Hardlinks verbunden. Der Dateiinhalt existiert folglich nur mehr ein Mal auf deiner Festplatte statt bisher zwei mal. Wird die Vorlage für Projekt1 nun geändert (z.B. Briefkopf wird an den Kunden angepasst), ist die automatisch auch für Projekt2 geändert.
Das kann ganz schlimme Folgen haben, wenn ein User nicht weiß, dass die beiden hardlinked sind und "auf die schnelle" was anpassen will.

lg

Cthluhu
facebraker
facebraker 28.11.2012 um 15:19:15 Uhr
Goto Top
Hallo Cthluhu,

das ist korrekt, das habe ich nicht bedacht.

Ich habe vor dies auf das Archiv-Laufwerk anzuwenden, dort hat keiner Schreibrechte, wenn etwas geändert werden muss, muss der Nutzer das Projekt wieder zurück auf das Projektlaufwerk kopieren.

Wenn die Daten kopiert werden, müsste das Problem ja entfallen, oder?

Ich hatte eigentlich vor es auch auf das aktuelle Projektlaufwerk anzuwenden, aber mit deinen Bedenken im Hinterkopf, lasse ich das mal lieber, das kann sehr schnell, sehr unangenehm werden.

Danke

Gruß Alex
C.R.S.
C.R.S. 28.11.2012 um 22:21:27 Uhr
Goto Top
Hallo Alex,

Zitat von @facebraker:
Ich weiß nicht ob ich das Tool jetzt projektweise auf die Daten loslasse oder nicht, erwarten mich da Probleme?
Hast du es schon ausprobiert?

Nein, ich werde das vorerst nicht brauchen. Von Seiten der Hardlink-Methode habe ich da aber keine Bedenken, aber was ich mir genau ansehen werde, ist der - auch teilweise - Datei-Vergleich, denn weg ist weg (bzw. viel Arbeit).

Grundsätzlich problematisch wird die Geschichte, wenn man sehr viele Hardlinks auf sehr viele Dateien setzt, also die 1023 möglichen bei NTFS in großen Archiven annähernd ausnutzt. Da wäre ich skeptisch, ob das vom Dateisystem noch sinnvoll zu managen ist, Stichwort MFT-Fragmentierung.

Sonst ist das eher eine Sinnfrage. Ich habe mich eigentlich immer für mehr Speicherplatz entschieden und nicht zu so einer Konsolidierung. Zwei Dateien haben auch ihren Wert, wenn eine beschädigt wird. Zudem muss man sich dann über die Übertragung ins Backup Gedanken machen. Meist werden von diesen Quellen Dateibackups und keine Images gezogen. Bei der Reduktion von Duplikaten kein Unterschied, aber wenn man jetzt Hardlinks als Komfortfunktion nutzt, um Dateien x-Mal an verschiedenen Orten verfügbar zu machen, bläht das - ohne Backup-Deduplizierung - die Backups auf ein Vielfaches der Ursprungskapazität auf.

Grüße
Richard