Wie greife ich mit yaffs2 auf .img-Dateien zu?

Ich habe versucht, sie in Ubuntu zu mounten, kein Glück, mounterkennt das yaffs2-Dateisystem nicht. Ich habe es versucht yaffs2utils, ./unyaffs2aber die img-Dateien werden nicht entpackt. Ich habe ein Problem dazu auf der Google Code-Seite hier gepostet .

Die img-Dateien wurden von CWM Recovery als Backup erstellt, und ich versuche, in das Dateisystem einzudringen, um alte Kontakte zu finden, und wenn ich nur die .db-Dateien bekommen könnte, glaube ich, dass ich sie von dort bekommen habe (ich werde nur laufen sqlite3und in die db gucken und die Kontakte auf Papier drucken oder so).

Jede Hilfe geschätzt!

Ich bin mir nicht sicher, ob Sie damit Kontakte abrufen können, aber es ist einen Versuch wert: play.google.com/store/apps/…
Titanium Backup v5+ kann auch aus CWM-Backups extrahieren :)
Ich erinnere mich, dass ich AppExtractor auf dem betreffenden Telefon ausprobiert habe, es konnte keine Kontakte finden, also wurde nichts importiert. Wenn dies sehr wichtig wäre, würde ich versuchen, für TB zu bezahlen, aber im Moment bin ich nur neugierig, wie ich auf die img-Dateien zugreifen kann.
Hier ist eine sehr ähnliche Frage, die ich zu beantworten versucht habe: android.stackexchange.com/a/111010/109855

Antworten (3)

Um ein YAFFS2-Image zu entpacken, können Sie das kostenlose unyaffsTool verwenden, das als vorgefertigte ELF-Binärdatei (für Linux) auf dieser Seite unter code.google.com verfügbar ist . Diese Seite enthält auch Hinweise, wie Sie den Quellcode erhalten, so dass Sie die Binärdatei selbst erstellen können, zB mit gcc ( gcc -o unyaffs unyaffs.c).

Ich verwende dieses Tool selbst, es funktioniert sowohl unter Ubuntu 8.04 32bit als auch unter Ubuntu 12.04 64bit (mit ia32-libsinstalliertem Paket).

Platzieren Sie die Binärdatei zB in /usr/local/bin(die sich in Ihrer befindet $PATH), damit Sie von überall darauf zugreifen können. Legen Sie die Bilddatei, die Sie extrahieren möchten, in ein leeres Verzeichnis ( unyaffsscheint Dateien immer direkt in den Ordner zu extrahieren, in dem sich die Bilddatei befindet), und rufen Sie dann unyaffsmit dem Namen der Bilddatei als einzigen Parameter auf, z unyaffs data.img. Danach finden Sie den Inhalt dieses Dateisystems/Images entpackt und können ihn untersuchen -- zB

  • SMS/MMS eindata/com.android.providers.telephony/databases/mmssms.db
  • Multimedia-Metadaten indata/com.android.providers.media/databases/*.db
  • Kalenderdaten eindata/com.android.providers.calendar/databases/calendar.db

Da ich gerade ein MotoBlur-Bild untersucht habe, wurden Kontakte in meinem Fall gespeichert data/com.motorola.blur.providers.contacts/databases/contacts2.db– sie befinden sich in Ihrem Fall wahrscheinlich an einem anderen Ort (eine Vermutung: data/com.android.providers.contacts/databases/*.db).

Der sqlite3Befehl funktioniert natürlich bei ihnen. Wenn Sie ein grafisches Frontend bevorzugen, kann ich Ihnen das sqlitemanPaket empfehlen (kommt mit einem gleichnamigen Binary, das die Datenbankdatei als Parameter akzeptiert).

Sie können Titanium Backup installieren und den Pro Key kaufen .

Es ermöglicht das Extrahieren von App-Backups aus gespeicherten CWM-Nandroid-Backups.

Verwendung: Titanium Backup starten, Menü > Mehr > „Aus Nandroid-Backup extrahieren“

Wie alt muss das CWM-Nandroid-Backup sein, um als alt zu gelten? Ich bin mir ziemlich sicher, dass es eine relativ neue Version von CWM war, die diese Sicherung erstellt hat.
Entschuldigung, schlechte Formulierung. Fest.
Ok, ich werde meinem Freund sagen, dass dies eine Option ist, wenn er mich weiterhin wegen der verlorenen Kontakte nörgelt ;)

Welches ROM war das im Backup?

Wenn das Dateisystem ext4 wäre, könnten Sie das img wie folgt in Loopback einhängen:

Dies ist übrigens auf Linux,

sudo mount -o loop,ro,noexec,noload system.img ~/mountedImageDir

Gehen Sie dann in dieses Verzeichnis ~/mountedImageDir und Sie sollten in der Lage sein, die Verzeichnisstruktur dort zu sehen :)

Er sagte, es sei yaffs2...
Welche Version von CWM ist die Schlüsselfrage.
Das Dateisystem ist nicht ext4, sondern yaffs2, und ich habe bereits einen "sauberen" Mount mit nur -o loop versucht, kein Glück. (Ich bin mir ziemlich sicher, dass es die neueste Version von CWM war, da das Backup erst vor ungefähr einer Woche erstellt wurde.) Das ROM im Backup war eine Art Standard-Xperia-Arc-Variante, bevor wir CyanogenMod installierten.