Andreas Feile wrote:
Thomas Hertweck, Mittwoch, 15. Januar 2003 21:32:
Naja, ich habe da eigentlich genau so gedacht wie Du... Die Frage, die sich mir nun stellt, ist: Wie kann das technisch ueberhaupt funktionieren? Ich kenne natuerlich keine internen Details zu den Journaling Filesystemen, d.h. auch nicht zu ReiserFS. Warum also kann ein neuer Aufbau des Trees (und das war es wohl, was gehol- fen hat) geloeschte Dateien wieder herstellen? Hat da jemand eine Erklaerung dazu?
Ich verstehe jetzt Dein Problem nicht ganz. Ob ich nun ein Journal habe oder nicht: in den paar Sekunden, in denen ein rm -rf arbeitet, kann unmöglich die ganze Platte gelöscht, also mit Nullen oder sowas beschrieben werden. Ergo: Die Dateien sind noch da, nur halt nicht zu sehen. Wenn ich jetzt also den gesamten Platz der Platte scanne, dann ist es doch durchaus vorstellbar, daß ich die ursprünglichen Dateien wiederkriege. Vielleicht nicht mit ihrem Namen, aber immerhin.
Nein, Du hast das Problem nicht verstanden. Ein --rebuild-tree _kann_ die geloeschten Dateien nicht wieder herstellen, wenn bereits der Befehl komplett abgearbeitet wurde. Das Filesystem ist dann korrekt und das Journaling Log fuer den Vorgang ist AFAIK nicht mehr verfuegbar. Somit kann auch von reiserfsck nichts wieder hergestellt werden. Stelle Dir mal vor, dann muesste ein --rebuild-tree ja nach Deiner Theorie alle Daten, die ich jemals geloescht habe und die noch nicht wieder physikalisch ueberschrieben wurden, wiederherstellen. Das kann nicht sein. IMHO liegt es daran, wie von Hartmut auch schon gesagt, dass der Befehl abgebrochen wurde. Waere der Befehl komplett aus- gefuehrt worden, dann kann man auch nichts mehr wiederher- stellen mit --rebuild-tree. Insonfern ist es doch ein gewis- ser Zufall, dass es funktionierte. Gruesse, Th. -- Thomas Hertweck, Geophysicist Geophysical Institute, Karlsruhe University (TH)