Artikel
2 Kommentare

Gelöschte Dateien eines Galaxy Nexus wiederherstellen unter Linux

Papierschnipsel. CC-BY 2.0 https://www.flickr.com/photos/16210667@N02/

Es gibt so Momente, da denkt man sich: „Was zum Teufel soll das jetzt?“. Ich habe von einem Windows PC aus Dateien über MTP auf dem Galaxy Nexus verschoben um zu einem späteren Zeitpunkt mal Paranoid Android zu installieren. Auf ein mal der Schock: ist jetzt der komplette Root-Ordner (also der Ordner auf den man per MTP drauf kommt) leer? Verdammt! Ja ist er!!! Ruhe bewahren ist bei so einem Malheur die Devise. Wie man hoffentlich wieder an die Daten kommt, möchte ich Euch kurz beschreiben.

DISCLAIMER: Ich bin nicht für Geräte verantwortlich, die nicht mehr funktionieren! Bitte mit Vorsicht meine Ausführungen lesen und selbst darüber nachdenken!

Vorbereitungen

  1. Ihr solltet zu aller erst sicherstellen, dass nicht mehr großartig mit dem Handy gearbeitet / gesurft / was weiß ich gemacht wird. Die Daten lassen sich nur solange problemlos wiederherstellen, wie Sie nicht überschrieben sind. Das heißt Flugmodus an und Handy zur Seite legen!
  2. Folgende Pakete habe ich nachinstalliert:
    1. gnu-netcat (um die Inhalte per nc (aka netcat) auf deinen Rechner zu übertragen)
    2. android-tools (um per ADB auf das Phone zugreifen zu können)
    3. testdisk (mit den Programmen PhotoRec und Testdisk zum restoren der Daten)
  3. Sicherstellen, dass ADB Root-Rechte bekommen wird: XDA-Forum
  4. ADB testen (adb devices ausführen) und ggf. als Root die Dienste neu starten: Link

Image ziehen

Damit Ihr die Daten auf dem Handy nicht aus Versehen (Ihr könnt quasi nichts dagegen machen) überschreibt ist wichtig, dass so wenig wie möglich geändert wird. Deswegen wird von dem Handy ein Image erstellt und auf dem PC gespeichert. Der erste Part verbindet sich mit dem Handy und führt über busybox netcat mit dem dd-Befehl aus. Dabei wartet er aber, bis ein Empfänger auf den Port 5555 kommt.

[root@bla ~]# adb forward tcp:5555 tcp:5555
[root@bla ~]# adb shell
shell@maguro:/ $ su
susu
/system/bin/sh: susu: not found
127|shell@maguro:/ $ su
root@maguro:/ # busybox nc -l -p 5555 -e busybox dd if=/dev/block/mmcblk0

Der Gegenpart lässt sich wie folgt starten:

[root@bla ~]# adb forward tcp:5555 tcp:5555
[root@bla ~]# nc 127.0.0.1 5555 | pv -i 0.5 > mmcblk0.raw

Ich verwende explizit mmcblk0, damit ich quasi den gesamten Speicher bekomme. User-Data liegt unter mmcblk0p12. Bei meinem 16 GB dauerte der Vorgang ca. 60 Minuten…

Gelöschte Dateien wiederherstellen

Das erstellte Image lässt sich dann einwandfrei mit Photorec bearbeiten. Das Tool ist ziemlich selbsterklärend, deswegen verweise ich hier auf die gute Dokumentation. Die Raw-Datei lässt sich direkt als Kommandozeilen-Parameter an PhotoRec weiterleiten.

Fazit

In der Theorie (und das sollte ja auch der Fall für ein solches Recovery sein) funktioniert das gut. Leider hat es bei mir nicht 100%ig hingehauen. Wahrscheinlich aber auch, weil ich den Umstand des kompletten Löschens zu spät wahrgenommen habe. Nahezu die kompletten Bilder sind unwiderbringlich weg… da muss wohl das Backup von vor ein paar Monaten herhalten!

Quellen / Weiterführende Links:

Beitragsbild: CC-BY-ND 2.0 Papierschnipsel. CC-BY 2.0 https://www.flickr.com/photos/16210667@N02/

2 Kommentare

  1. Pingback: Datenwiederherstellung (von / auf der Speicherkarte) - Seite 34 - Android-Hilfe.de

  2. Pingback: Anonymous

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.