Delphi-PRAXiS
Seite 2 von 2     12

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   deCHK 0.9 - Wiederherstellen von chk-Dateien (https://www.delphipraxis.net/130349-dechk-0-9-wiederherstellen-von-chk-dateien.html)

Techcrawler 30. Mär 2009 11:38

Re: deCHK 0.9 - Wiederherstellen von chk-Dateien
 
Zitat:

Zitat von himitsu
wie läuft das mit dem wiederherstellen eigentlich?

wird da die originaldateigröße auch wiederhergestellt (durch die Custer sind die chk-Dateien ja immer etwas größer, wenn die Datei komplett ist)

wird eventuell gesagt wie "OK" die wiederhergestellte Datei ist

Nein, es wird versucht, die Datei vom Start weg wieder zu regenerieren, d.h. steht in den Kopfdaten, dass es eine jpg, avi, usw. Datei ist, benennt das Tool die chk-Datei um und verschiebt/kopiert diese dann in den Zielordner. Dabei kann - _kann_ - es natürlich dazu kommen, dass am "Ende" der Datei noch mehrere andere Dateien anhängen, also dass in einem JPG Bild z.B. noch 3 weitere Bilder sind.
Dies überprüfe ich (noch) nicht!
Bei einem sehr fragmentierungsarmen System sind die chancen, dass du viele "gute" dateien erhälst sehr hoch. Je fragmentierter deine Platte, umso mehr "Leichen" wirst du erhalten. Selbst das standard "defrag" von MS ist besser als keine defragmentation (in dem Zusammenhang mit der Wiederherstellung).

Zitat:

Zitat von himitsu
PS: wenn du den Dateiinhalt prüfst, dann könntest du z.B. noch versuchen die übriggebliebenen/defragmentierten Teile zusammenzusetzen

Dazu gibt es nette Matheformeln, wie lange es bei nur 3 Dateien daurt, bis du diese wieder zurück hast. Das dumme ist, dass bei einem chk-File, dass aus mehreren Files besteht, kein echter "trenner" existiert. Es _kann_ sein, dass ein oder mehrerer EOF vorkommen, es muss aber nicht (und dies ist bisher in der Mehrheit). Ist also schwer, eine chk-Datei aus jpg, avi und txt voneinander zu trennen.

Also, als erstes stellen wir erstmal die Files wieder her, die einfach zu regenerieren sind. Der Rest findet sich dann später. In meinem Fall liegen noch knapp 1.000 Dateien auf meiner Platte, die noch zu identifizieren sind. Bei gut der hälfte weiß ich, was es ist, suche aber noch einen eineindeutigen Schlüssel zur Identifikation und die anderen sind erstmal "Mülldateien", da ich da auch nicht so recht sehe, was es ist oder sein könnte. Aber kommt Zeit, kommt Rat, immer eins nach dem anderen ;)
Immerhin sind ja bisher gut 5.000 Dateien wieder da, was eine recht gute Quote ist, finde ich...

delphi10 14. Jun 2009 20:55

Re: deCHK 0.9 - Wiederherstellen von chk-Dateien
 
Hallo techcrawler
Habe gerade mal Dein Tool laufen lassen. Gute Idee, zwar war meine Quote unter 1% bei 752 chk-Dateien, aber die gammeln schon zwei Jahre auf der Platte rum, wer weiß was damit alles schon passiert ist.
Aufgefallen ist mir noch, dass die Mainform bei zwei-Monitorbetrieb im Primary-Monitor zentriert - , alle weiteren Fenster aber wohl nicht mit poMainFormCenter, sonder mit poDesktopCenter angezeigt werden. Somit liegen sie direkt unter dem rechten und linken Rahmen der Monitore.
Desweiteren ist die Eingabe des Quell- und Zielordners nur über die Auswahl möglich, eine Eingabe zu Fuß geht nicht. Nur Kleinigkeiten, wichtig ist die Funktion und die ist ok.
cu delphi10

omata 14. Jun 2009 21:27

Re: deCHK 0.9 - Wiederherstellen von chk-Dateien
 
Zitat:

Zitat von Techcrawler
...d.h. je fragmentierter deine Platte ist, umso weniger Files können wieder hergestellt werden.


Techcrawler 19. Jun 2009 12:48

Re: deCHK 0.9 - Wiederherstellen von chk-Dateien
 
Zitat:

Zitat von delphi10
... zwar war meine Quote unter 1% bei 752 chk-Dateien, aber die gammeln schon zwei Jahre auf der Platte rum, wer weiß was damit alles schon passiert ist....

Deine Quote stellt sich aus 2 Dingen zusammen:
1. Kennt deCHK deine Files überhaupt? Es könnten hauptsächlich Dateien sein, die deCHK gar nicht bekannt sind und die deCHK deshalb nicht wiederherstellen kann.
2. Evtl. sind von den 752 chk dateien nur 300 "echte" dateien dabei, der rest sind fragmente der originale. Wenn du - beim Zeitpunkt des Crashes - 1 Datei hast, diese aber in 3 teile fragmentiert ist, dann stellt chkdsk 3 chk-dateien wieder her. deCHK könnte - im besten Fall - die Datei wiederherstellen, die den bekannten header beinhaltet (meist der "Anfang" der Datei), den Rest aber nicht erkennen. Eine Erkennung über diese "Grenze" hinaus - also der suche nach fragemt-resten der dateien - habe ich erstmal nicht vor.

Es ist also durchaus wichtig, sein System "defragmentiert" zu halten. An dieser Stelle gebe ich keine Empfehlung für irgendein tool heraus, aber man kann durchauch sagen, dass selbst ein durchlauf mit 'defrag' besser ist als gar kein Durchlauf zum defragmentieren ;)

Techcrawler 31. Jan 2012 21:12

AW: deCHK 0.9 - Wiederherstellen von chk-Dateien
 
deCHK 2.0.1 ist raus.
Mittlerweile portiert auf Lazarus kann es nun schon 50 Dateitypen.
Wollte es ja nur mal sagen ;)
http://www.techcrawler.de/dechk/


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:58 Uhr.
Seite 2 von 2     12

Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf