Entwickler-Ecke
Dateizugriff - Fat32 Root manipulieren
mindtrap - Mo 12.10.09 12:25
Titel: Fat32 Root manipulieren
Hallo,
ich versuche Fat32 Informationen auf einer Partition zu verändern. Meine Schreibzugriffe funktionieren, aber nur mit exklusivem Zugriff auf die Partition. D.h. bei Partitionen wie die Systempartition oder Partitionen auf die zugegriffen wird, funktioniert der Schreibvorgang nicht.
Hat jemand eine Idee, wie man diesen Zugriff erzwingen kann?
MfG
mindtrap
Moderiert von
Narses: Überflüssige Zeilenumbrüche/Leerzeilen entfernt.
BenBE - Mo 12.10.09 12:54
Was denkst Du, warum Checkdisk explizit eine Partition kurzzeitig aushängt für seine Arbeit und ggf. zu einem Neustart auffordert:
Es gibt keinen anderen, sauberen Weg, zumindest ohne kooperativ anderen das mitzuteilen, was geändert wurde, d.h. über den Dateisystemtreiber zu gehen.
Zudem, worum handelt es sich denn?
Wenn Du nicht exklusiven Zugriff brauchst, sondern auch Shared-Zugriff eine Option ist, könntest Du ggf. mehr Erfolg haben. So ist das IMHO bei den meisten Hex-Editoren mit einer Disk-Bearbeitungsfunktion (z.B. WinHex) realisiert. Damit riskiert man aber, dass der Treiber out-of-sync mit dem Datenträger gerät --> Vorsicht!
mindtrap - Mo 12.10.09 13:22
Es geht darum, dass ich für mich einen Datenshredder bastel.
Du beschreibst zwei Wege:
1) Bei Sytemneustart die Informationen schreiben.
Wie könnte ich soetwas realisieren?
2) Mit nicht exklusivem Zugriff.
Wenn ich das Versuche (Zugriff per FILE_SHARE_READ or FILE_SHARE_WRITE) bekomme ich verständlicherweise die Fehlermeldung, dass der Zugriff verweigert wurde.
Falsche Flags? Andere Datenshredder können auch alte Dateinamen löschen, aber wie?
MfG
mindtrap
mindtrap - Mo 19.10.09 19:32
Ich weiß nicht, ob das als unlauterer Push gilt, wenn ich hier eine neue Erkenntnis
zum besten gebe.
1) Die Manipulation des Dateisystems geht unter WinXP und niedriger.
Was ich vergessen hatte: Unter Vista hat der Admin diese Rechte nicht mehr.
(Mein Programm läuft mit Adminaccount)
2) Ich muss wohl einen neuen Thread für meine neue Frage erstellen:
Wie bekomme ich diese Rechte und welche sind das genau?
Hier geht's weiter. (link kommt noch)
MfG
mindtrap
Delete - Di 20.10.09 01:45
Wozu braucht man zum dazu Zugriff auf die Partition? Einmal mit zufälligen Daten überschreiben reicht.
mindtrap - Di 20.10.09 13:33
Bei Fat32 und NTFS werden unter anderem die Namen von Dateien an bestimmten Positionen gespeichert.
Bei NTFS die bekannte MFT.
Bei Fat32 gibt es ein Root Directory ('.'). In diesem stehen dann die ersten Dateien und Verzeichnisse.
Dieser Rooteintrag und untergeordnete Verzeichniseinträge gehören zum Dateisystem und sind in Vista geschützt.
Da in einem Fat32-Entry (in diesem Fall ein Verzeichnis) keine alten Dateinnamen mehr auftauchen dürfen,
müssen alle Werte, die nicht belegt werden, auch gelöscht werden.
Gute Datenrettungsprogramme (ich nenne mal keine Namen) finden diese Namen sonst.
MfG
mindtrap
Narses - Di 20.10.09 13:43
Moin!
OK, dann erst umbenennen und dann
Luckie hat folgendes geschrieben : |
| Einmal mit zufälligen Daten überschreiben |
Fertig. :D
cu
Narses
mindtrap - Di 20.10.09 13:48
Das reicht nicht.
Wenn der Benutzer z.B. eine Datei selbst gelöscht (auch aus dem Papierkorb) hat, bleibt der Dateiname solange erhalten, bis er zufällig überschrieben wird.
D.h. man muss (sollte, wenn man sauber arbeitet) im Dateisystem nach unbenutzten Einträgen suchen und diese entfernen.
//Edit: Vielleicht reden wir auch etwas aneinander vorbei. Es ist keine Herausforderung eine Datei umzubennennen und zu löschen. Wenn man aber dem User die Möglichkeit geben will die freien Bereiche auf dem Volumen zu löschen, muss man etwas mehr tun.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!