Versehentlich mit rm gelöschte Daten retten

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Versehentlich mit rm gelöschte Daten retten

Beitrag von Richard » 03.01.2019 20:40:39

Hallo,

ich habe mich parallel über das Terminal auf meinem Raspberry Pi eingeloggt und die Terminalfenster verwechselt. Dabei hab ich rm * im falschen ausgeführt und dort das Benutzerverzeichnis leer geräumt (zum Glück nicht die Verzeichnisse und Dateien darin). Ein Backup besteht, jedoch hab ich an ein paar Skripten gebastelt, die noch nicht gebackupt wurden. Zumindest die würde ich gerne versuchen zu retten. Unter Windows konnte ich schon aus dem Papierkorn gelöschte Dateien mit einem Zusatztool wiederherstellen. Geht das auch bei ext4?

Das was hier https://bbs.archlinux.de/viewtopic.php?id=20458 (#5) beschrieben wurde geht so irgendwie nicht. Bei

Code: Alles auswählen

ls -lid /mnt/home/pi/
wird mir keine Inode nagezeigt, sondern nur

Code: Alles auswählen

20 drwxr-xr-x 23 ich ich 4096 Jan  3 20:22 /mnt/home/pi/
Die SD-Karte ist am PC angeschlossen und als read-only unter /mnt eingebunden.

Richard

DeletedUserReAsG

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von DeletedUserReAsG » 03.01.2019 20:51:40

Debianextundelete könnte helfen. Ich würde ein Image erstellen und damit rumspielen.

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von Richard » 03.01.2019 21:01:23

Da muss man aber (zumindest ist da in dem Link oben so gemacht worden) den genauen Pfad inkl. Dateinamen angeben, den weiß ich nicht genau. Ich bräuchte etwas wo man sich die wiederherstellbaren Dateien anzeigen lassen kann.

Hab mal --restore-all versucht, da wurden aber nur 4 Dateien wiederhergestellt und das hier ausgegeben:

Code: Alles auswählen

sudo extundelete /dev/sdf2 --restore-all
NOTICE: Extended attributes are not restored.
Loading filesystem metadata ... 32 groups loaded.
Loading journal descriptors ... 11872 descriptors loaded.
Searching for recoverable inodes in directory / ... 
4 recoverable inodes found.
Looking through the directory structure for deleted files ... 
1 recoverable inodes still lost.
Unable to restore inode 6004 (file.6004): No undeleted copies found in the journal.
Da muss es aber noch mehr geben. Bei NTFS sollte doch ein löschen aus dem Papierkorb technisch auch nichts anderes sein als das löschen hier bei ext4 mit rm.

DeletedUserReAsG

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von DeletedUserReAsG » 03.01.2019 21:05:45

Gibt noch photorec und testdisk. Bringt aber teils erheblichen Nacharbeitungsbedarf mit sich.

NTFS ist grundlegend anders, als ext4.

Benutzeravatar
heisenberg
Beiträge: 3473
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von heisenberg » 03.01.2019 21:06:55

Das wichtigste dabei:

Mit jeder weiteren Dateioperation sinken Deine
Chancen, dass Du Deine Daten wieder bekommst.

Also falls noch nicht geschehen: Imagebackup!
... unterhält sich hier gelegentlich mangels wunschgemäßer Gesprächspartner mal mit sich selbst.

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von Richard » 03.01.2019 21:15:43

Mit testdisk hat es funktioniert, gehören jetzt aber alle root da testdisk ja als root lief. Sonst müsste alles passen.
Mit jeder weiteren Dateioperation sinken Deine
Chancen, dass Du Deine Daten wieder bekommst.
Wenn ich die Partition als read-only eingebunden habe? Die SD-Karte hab ich gleich danach aus dem Pi entfernt.

Benutzeravatar
heisenberg
Beiträge: 3473
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von heisenberg » 03.01.2019 22:22:59

Richard hat geschrieben: ↑ zum Beitrag ↑
03.01.2019 21:15:43
Mit jeder weiteren Dateioperation sinken Deine Chancen, dass Du Deine Daten wieder bekommst.
Wenn ich die Partition als read-only eingebunden habe? Die SD-Karte hab ich gleich danach aus dem Pi entfernt.
Read-only ist unkritisch. .o0 (die Anmerkung hatte ich wohl überlesen...)
... unterhält sich hier gelegentlich mangels wunschgemäßer Gesprächspartner mal mit sich selbst.

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von Richard » 04.01.2019 13:49:13

Hat doch nicht funktioniert, die Dateien waren alle leer mit 0 Byte, das hatte ich bisher nicht gesehen. Hab daher nochmal extundelete versucht, da kommt

Code: Alles auswählen

NOTICE: Extended attributes are not restored.
Loading filesystem metadata ... 32 groups loaded.
Loading journal descriptors ... 11874 descriptors loaded.
extundelete: Unable to open file lg-uj6519.conf
extundelete: Operation not permitted when trying to examine filesystem
Daraus werd ich erstmal nicht schlau.

Was macht denn ext4 anders als NTFS im Bezug auf die Behandlung gelöschter Dateien? Soweit ich das verstehe löscht NTFS erstmal nur den Hardlink zu den beschriebenen Blöcken. Sind diese dann auch überschrieben - weil das FS weiter genutzt wurde - ist die Datei wirklich weg. Bis daher sollte sie aber zu retten sein.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von rendegast » 04.01.2019 15:10:32

linux ist wohl recht flott eingestellt, rm-Kandidaten "nachzubehandeln".
Beziehe mich auf superblock-Kopien und Nachnullen belegter Datenblöcke.

(EDIT) Generell zum Wiedererlangen gelöschter Dateien:
Falls noch irgendein Prozeß auf die Datei zugreift, gelingt der Zugriff auf den >Inhalt< der gelöschten Datei recht einfach über
/proc/XXX/fd/
/proc/XXX/task/YYY/fd/
XXX / YYY können mit 'lsof' ermittelt werden.
Zuletzt geändert von rendegast am 04.01.2019 18:21:08, insgesamt 1-mal geändert.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von Richard » 04.01.2019 16:01:19

Den Pi hab ich gleich ausgeschaltet und die SD-Karte am PC angeschlossen. Es laufen also keinerlei Prozesse mehr.

Apfelmann
Beiträge: 669
Registriert: 15.01.2010 20:48:45
Kontaktdaten:

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von Apfelmann » 04.01.2019 17:54:48

photorec liest alles aus und speichert in Verzeichnisse mit jeweils 500 Dateien, die numerisch benannt sind,
das Zielverzeichnis zum Retten sollte mindestens so groß wie die Partition / SD-Karte mit den gelöschten Dateien.

LG

debianoli
Beiträge: 4068
Registriert: 07.11.2007 13:58:49
Wohnort: Augschburg

Re: Versehentlich mit rm gelöschte Daten retten

Beitrag von debianoli » 04.01.2019 18:28:32

Richard hat geschrieben: ↑ zum Beitrag ↑
04.01.2019 13:49:13
Hat doch nicht funktioniert, die Dateien waren alle leer mit 0 Byte, das hatte ich bisher nicht gesehen. Hab daher nochmal extundelete versucht, da kommt

Code: Alles auswählen

NOTICE: Extended attributes are not restored.
Loading filesystem metadata ... 32 groups loaded.
Loading journal descriptors ... 11874 descriptors loaded.
extundelete: Unable to open file lg-uj6519.conf
extundelete: Operation not permitted when trying to examine filesystem
Daraus werd ich erstmal nicht schlau.
Du hast die Karte Read-Only gemountet, da kann extundelte nicht daraufschreiben.

Am Besten erstellst du per dd ein Image der Karte und lässt auf dieses image-File extundelete los, und das sinnvollerweise mit der Datums-Option --after dein_Löschdatum_im_Unix_format

Antworten