![]() |
Backup von offenen/gesperrten Dateien
Hallo!
Ich habe mir ein kleines Programm gebastelt, mit dem ich von verschiedenen Dateien in regelmäßigen Abständen Backups anlegen kann. Ein einfaches Backup Tool eben. Das Problem ist, dass das Programm nur Dateien sicher kann, die nicht gerade von einem anderen Programm verwendet werden und daher schon geöffnet/gesperrt sind. Nun gibt es aber ja Image-Programme, die im laufenden Betrieb ganze Partitionen sichern. Irgendwie muss es also möglich sein auch solche Dateien zu sichern die gerade verwendet werden. Aber wie? Ich habe hier schon ein paar Themen gefunden, die sich mit ähnlichen Problemen beschäftigen. ![]() Habt ihr Tipps für mich, wie man das lösen könnte oder wo man nach Hinweisen auf eine Lösung suchen könnte? Besten Dank! Ares |
Re: Backup von offenen/gesperrten Dateien
Im Grunde haben wir das schon erklärt.
Du müstest halt "nur" die Position der Datei auf dem Datenträger auslesen und dann über einen "direkten" Zugriff auf den Datenträger diese Stellen auslesen. Aber da kommst du ohne Kenntnisse, wie die Partition aufgebaut ist, keinen Schritt weiter. bei FAT z.B.: - testen ob und was für'n FAT (FAT12, FAT16, FAT32) - RootVereichnis suchen und von dort aus, über alle Zwischenverzeichnisse, bis zum gewünschten Verzeichnis/Datei durchhangeln (also jeweils Eintrag in der Verzeichnisliste suhen, Position ausesen und dort hinspringen) - dann hast'e erstmal den Clustersector - dieser muß dann ungerechnet werden ErstesByte := ErsterDatenCluster(StartSecrot * BytePerSector) * SectorsPerCluster * BytePerSector Dann darfst du dich aber auch noch durch das VolumeBitmap kämpfen, wo du nachsehn muß ob und wo die restlichen Cluster für die Datei rumliegen. Die Datei könnte ja fragmentiert sein, was bedeuten würde, daß du nicht einfach alle Bytes (Dateigröße) hintereinander auslesen kannt ... tja das wäre so in etwa der Weg, wie es ginge bei NTFS ist es natürlich ähnlich, außer daß dort die Datenstrukturen etwas anders sind. |
Re: Backup von offenen/gesperrten Dateien
Zitat:
|
Re: Backup von offenen/gesperrten Dateien
Danke euch beiden für eure Antworten!
Es wird also nicht die Datei kopiert/gelesen sondern direkt die Cluster auf der Festplatte die zu der Datei gehören. Hierzu muss ich mich irgendwie durch das Dateisystem hangeln und herausfinden welche Cluster zu der Datei gehören. Korrekt? Zitat:
Bevor man anfängt die Cluster zu lesen, müsste man natürlich erst feststellen ob die Datei nicht gerade geändert wird (kann man dass?). |
Re: Backup von offenen/gesperrten Dateien
Hmm, all diese Imaging-Tools schreiben aber auch groß und breit dabei, das während des ARbeitsprozesses kein anderes Programm ausgeführt werden sollte. Zumindest die, mit denen ich bisher gearbeitet habe, haben das so gemacht.
|
Re: Backup von offenen/gesperrten Dateien
Zitat:
Das Auslesen dauert ja 'ne ganze Weile ... also wenn sich da was ändert (Datei wird von irgendeinem Prog bearbeitet/geändert/erstellt/gelöscht), dann könnte die Angabe in einem eingelesenen Verzeichnis nicht mit den tatsächlichen Daten übereinstimmen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz