Kann adb verwendet werden, um SMS-Nachrichten im permanenten "abgesicherten Modus" wiederherzustellen?

Ich habe einen nicht gerooteten Droid X2, der sich im permanenten "abgesicherten Modus" befindet, aber ich möchte SMS-Nachrichten wiederherstellen. SMS-Sicherung und -Wiederherstellung funktionieren NICHT, da der abgesicherte Modus nur die Ausführung von System-Apps zulässt.

adb shellbringt mich in das Telefon, erlaubt mir aber nicht, auf die SMS-Datenbank zuzugreifen:

[rjt@pc232-Arbeitsbereich]$ Adb-Shell
$ cat /proc/version
Linux-Version 2.6.32.9-00008-gc406305 (hudsoncm@il93lnxdroid80) (gcc-Version 4.4.0 (GCC) ) #2 SMP PREEMPT Dienstag, 24. Januar 22:54:19 CST 2012

$ cd /data/data/com.android.providers.telephony/databases/
$ pwd
/data/data/com.android.providers.telephony/databases
$ls
opendir fehlgeschlagen, Berechtigung verweigert
$ su -l Wurzel
su: Erlaubnis verweigert
$sudo
sudo: Erlaubnis verweigert
$ sudo su -
sudo: Erlaubnis verweigert
$ sudo su -l root
sudo: Erlaubnis verweigert
$

Da SMS Backup and Restore im normalen Modus auf meine SMS-Nachrichten zugreifen darf, blockiert der "abgesicherte Modus" meinen Zugriff oder die Tatsache, dass dieses Telefon nicht gerootet ist?

Kann ich das Telefon rooten, ohne meine vorhandenen SMS-Nachrichten zu verlieren?

Antworten (3)

Ohne gerootetes Gerät ist dies nicht möglich, da das /dataVerzeichnis nur vom Android-System gelesen werden kann und Apps auch nur/data/data/<package name> ihr eigenes Verzeichnis lesen können .

Android-Geräte verfügen nicht über sudo, und Sie müssen gerootet sein, um su verwenden zu können, wenn es zur Root-Shell wechselt (auf nicht gerooteten ROMs kann su nicht zum Root-Benutzer wechseln, da der Kernel dies verweigert).

Wenn Sie einen Weg finden, das Gerät zu rooten (was schwierig sein kann), können Sie die /dataPartition als RW mounten und dann Dateien davon kopieren.

Verwenden Sie diesen Befehl, um die Partition erneut zu /datamounten:

su

mount -o remount,rw /data

Der suBefehl kann nur auf einem gerooteten Gerät ausgeführt werden.

BEARBEITEN:

Nur zur Verdeutlichung: Die SMS Backup & Restore-App verwendet einen API-Aufruf, um die SMS-Nachrichten über die Messaging-App abzurufen, daher ist die READ_SMSBerechtigung erforderlich.

EDIT2:

Die meisten Rooting-Methoden löschen die Gerätedaten nicht, einige tun dies jedoch. Sie müssten jedoch nach einer Möglichkeit suchen, Ihren Droid 2 zu rooten, und sehen, ob er die Daten löscht.

Sollte ich im "abgesicherten Modus" in der Lage sein, Anwendungen wie "SMS Backup and Restore" über adb zu installieren und auszuführen? Wenn das so ist, wie?
@rjt Sie können sie höchstwahrscheinlich installieren, aber Sie können sie AFAIK nicht ausführen . Du könntest es aber versuchen. Laden Sie die APK-Datei der Apps herunter und adb install <path/to/apk/file>installieren Sie sie.
Danke Liam, dass du betont hast, dass das Telefon zuerst gerootet werden muss.

Versuche dies:

cat /data/data/com.android.providers.telephony/databases/mmssms.db > /sdcard/mysms.db

Dadurch wird die SMS-Datenbank auf die SD-Karte kopiert.

Für die Telefondatenbank

cat /data/data/com.android.providers.telephony/databases/telephony.db > /sdcard/mytelephony.db

Es ist ein sehr alter Trick, die Datenbanken ohne Root einzulesen. Es ist nicht garantiert , dass es mit allen ROMs funktioniert, je nachdem, wie die Verzeichnisberechtigungen festgelegt sind.

$ cat /data/data/com.android.providers.telephony/databases/mmssms.db /data/data/com.android.providers.telephony/databases/mmssms.db: Permission denied
Sie haben das Weiterleitungssymbol weggelassen? wie in>
Ja, ich habe die Umleitung weggelassen, weil ich derzeit keine externe SD-Karte habe. Werde es nach dem Einlegen der Karte erneut versuchen. Hoppla. Ich habe die SD-Karte nicht dabei, glaubst du wirklich, dass es einen Unterschied macht?
direkt ausprobieren adb pull /data/...? Du hättest in deiner Frage explizit angeben sollen, dass du keine externe SD Card hast !
[rjt@pc232 workspace]$ adb pull /data/data/com.android.providers.telephony/databases/mmssms.db failed to copy '/data/data/com.android.providers.telephony/databases/mmssms.db' to './mmssms.db': Permission denied
Dies funktioniert nicht, da das Gerät nicht gerootet ist! Die /data-Partition ist ohne root nicht einmal lesbar! Sie müssen gerootet sein, den su-Befehl verwenden, um eine Root-Shell aufzurufen, und dann die /data-Partition als RW neu mounten.
Liam W, in meiner ersten Frage werden Versuche mit sudo und su demonstriert, aber die Erlaubnis verweigert. Mache ich etwas falsch in Bezug auf su / sudo?
@rjt Siehe meine Antwort. Android kommt nicht mit sudo und root kann nur auf einem gerooteten Gerät erreicht werden.
Gibt es also eine Möglichkeit, das Telefon zu rooten, ohne die vorhandenen SMS-Nachrichten zu löschen?
@rjt Siehe letzte Bearbeitung meiner Antwort.
@LiamW Ich habe ausdrücklich gesagt, dass es nicht garantiert ist, dass es auf ALLEN ROMs funktioniert ... einige tun es, nicht gerootetes Froyo auf Samsung Europa, das funktioniert. Nicht alle!
@t0mm13b, danke für die Hilfe. Ich habe es mit einer externen SD-Karte versucht, bekomme aber immer noch "Permission denied".
@ t0mm13b, ich habe es geschafft, das Telefon zu rooten und ein Backup zu erstellen, genau wie Sie es beschrieben haben. Danke schön.

Ich bin mir noch nicht sicher, ob dies auf Nicht-Google-Telefonen funktioniert, aber auf meinem Pixel 2 und Nexus 5 ist die Sicherungsfunktion (unter Einstellungen -> System -> Sicherung -> (ggf. Profil auswählen) -> Pixel 2-Sicherung ) zeigt, dass SMS-Textnachrichten in die Google Drive-Sicherung aufgenommen werden, sofern Sie diese aktiviert haben. Sie können die Sicherung nicht direkt von Google Drive/PC herunterladen oder anzeigen, aber wenn Sie ein anderes Telefon haben und Daten darauf wiederherstellen möchten, sollten die SMS-Nachrichten auf das neue Telefon heruntergeladen werden und mit einer Drittanbieter-App angezeigt und exportiert werden können .