Ja, aber adb root war kein Erfolg. Keine Erlaubnis. Aber ich könnte adb Shell su. Es gibt #.
User3734225
Antworten:
20
Die folgenden Dateien und Verzeichnisse /data/datasind vor dem "Durchschnittsbenutzer" geschützt, sodass Sie sie nur dann "ziehen" können, wenn der ADB-Dämon im Stammmodus ausgeführt wird. Anders als die Datei , die Sie mit Bezug wurden ( /system/buildpropzumindest ist lesbar von allen Anwendungen), Ordner unten /data/datasind „unsichtbar“ ( mit Ausnahme der Wurzel), so dass sie nicht einmal gelesen werden können.
Damit Sie sie verwenden adb pullkönnen, müssen Sie Ihren ADB-Daemon zuerst im Root-Modus ausführen. Je nach Gerät kann dies mit einem einfachen adb rootBefehl geschehen - die meisten Geräte lehnen dies jedoch ab. In diesen Fällen können Sie chainfire's adbd insecure verwenden : Installieren Sie diese App auf Ihrem Gerät, starten Sie sie dort und wechseln Sie manuell in den "unsicheren" Modus. Nun pullsollte das gelingen.
Bemerkung: Es heißt "unsicher", weil adbdals root jeder mit einem Computer und einem USB-Kabel auf alles auf Ihrem Gerät zugreifen kann. Nur für den Fall, dass Sie sich fragen.
Danke dir! Kann ich, abgesehen vom Chainfire adbd insecure, das Flag ro.secure in der Build-Eigenschaft setzen? Kann ich die AdB-Shell setprop ro.secure 0 verwenden?
User3734225
Ich habe das noch nie ausprobiert und weiß auch nicht genau, wofür diese Flagge gedacht ist - deshalb kann ich es nicht sagen. (Übrigens: Wenn Sie die Antwort nützlich fanden, können Sie sie gerne "verbessern" (die SE-Methode, um "Danke" zu sagen) - oder "akzeptieren", wenn sie unser Problem gelöst hat;)
Izzy
1
adbd unsichere Arbeit für mich :)
user3734225
6
Wenn Ihr Telefon verwurzelt ist, gibt es drei Möglichkeiten, dies zu umgehen. Der erste ist, ADBD unsicher zu verwenden .
Das andere ist, es in einen anderen Ordner mit root zu verschieben und dann von dort zu ziehen:
Darf ich fragen, worauf $1/*sich das bezieht? Ist es das /data/dataVerzeichnis?
Emen
vonderful Antwort
Dan Bradbury
5
Sie können Datenordner nicht direkt abrufen, da adb keinen Dateilistenzugriff darauf hat. Wenn Sie den Ordner / data ziehen möchten, können Sie dies über die Wiederherstellung tun ([Benutzerdefinierte Wiederherstellung, CWM / TWRP] führen Sie adb aus, während sich das Gerät im Wiederherstellungsmodus befindet, hoffentlich eine benutzerdefinierte Wiederherstellung). Oder kopieren Sie als root / data in ein anderes Verzeichnis (sdcard) und ziehen Sie es von dort ab.
Vielen Dank. Aber ich konnte die Datei build.prop in den Ordner / System ziehen. adb shell su und dann kann ich dateien im root ordner auflisten. Ich habe in einer Google-Suche gelesen, dass die Einstellung "ro.secure build property" auf "0" beim Abrufen von / data hilft. Ist das wahr? Wenn ja, gibt es eine Möglichkeit, dies zu tun?
User3734225
Sie können build.prop abrufen, da / system die Berechtigung zum Auflisten hat. Sie können ro.secure = 0 in Ihrer boot.img ändern, aber das ist ein sehr komplexer Schritt. Es wäre einfacher, eine benutzerdefinierte Wiederherstellung zu installieren und von dort aus zu starten.
Hiemanshu Sharma
Vielen Dank! Mein Hauptzweck ist die Implementierung eines forensischen Antrags als Abschlussprojekt der Universität. Ich habe große Angst, dass durch die Installation der benutzerdefinierten Wiederherstellung die Daten auf dem Gerät gelöscht werden. Haben Sie eine Idee zu diesem Thema?
User3734225
Hinzufügen zu meinem vorherigen Kommentar - Was ist die Verwendung von ADB Shell Setprop? Kann ich es in diesem Fall nicht benutzen?
User3734225
1
Ein forensisches Wiederherstellungsprogramm, bei dem das Telefon als Root fungiert und das Debugging aktiviert ist, ist nicht sehr nützlich.
Dan Hulme
1
TEIL I: Alle Dateien für einen ADB PULL vorbereiten
Das hat bei mir funktioniert: * Stellen Sie sicher, dass Sie die neueste ADB-Version verwenden.
Starten Sie die ADB-Sitzung:
'infocus $ adb shell'
Holen Sie sich die SU-Rechte einmal in der ADB-Sitzung und geben Sie "su" wie folgt ein:
'shell @ m1: / $ su'
Dann werden Sie feststellen, dass das "$" wie folgt zu "#" wird:
'root @ m1: / #'
-Der Hash lässt Sie wissen, dass Sie sich im SU-Modus befinden.
Erstellen Sie einen Ordner auf der / sdcard des Geräts
'root @ m1: / # mkdir / sdcard / data /'
* Gehen Sie zum Stammverzeichnis der Datei, die Sie kopieren möchten. - Für mich wollte ich beispielsweise ein Backup / eine Kopie meiner Apps erstellen und auf meinem Computer speichern.
'root @ m1: / data / app #'
Ein Beispiel dafür, was ich bekomme, wenn ich diesen Ordner "ls":
'root @ m1: / data / app # ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1
com.android.chrome-1
com.android.mms-1
com.android. Vending-2 '
Um mit dem ADB-Befehl "cp" rekursiv zu kopieren, verwenden Sie die Option "-R". Da ich alles darin kopieren wollte, habe ich den Platzhalter "*" folgendermaßen verwendet:
'root @ m1: / data / app # cp -R * / / sdcard / data /'
Sobald Sie die Eingabetaste gedrückt haben, dauert es offensichtlich eine Weile, bis die Datei kopiert ist. Der Cursor blinkt dann ein wenig, aber es sieht so aus, als würde er nichts tun, ABER ES IST! Es kopiert die Dateien, also keine Panik! und halt den Prozess nicht an !!! -Wenn Sie nur eine weitere ADB-Shell-Sitzung öffnen möchten, gehen Sie zu dem Ordner, in den Sie die Dateien übertragen, und führen Sie eine "ls" -Prüfung durch. Sie sollten feststellen, dass der leere Ordner jetzt mit den Dateien gefüllt wird. Sobald die Übertragung abgeschlossen ist, erhalten Sie Ihre Shell zurück.
Gehen Sie zu "sdcard / data" und stellen Sie sicher, dass alles mit "ls" kopiert wurde:
'root @ m1: / sdcard / data # ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1
com.android.chrome-1
com.android.mms-1'
TEIL II: Der ADB PULL
Wenn Sie zu diesem Zeitpunkt noch keinen Ordner auf dem Zielcomputer erstellt haben, tun Sie dies. Ich habe bequem einen Ordner namens "apps" erstellt
Lassen Sie uns nun den schwer fassbaren rekursiven ADB-PULL aller Dateien auf einmal ausführen: - Stellen Sie sicher, dass Sie von der ADB-Sitzung abgemeldet sind, da wir uns im SU-Modus befinden. Wir müssen zweimal beenden:
Von einer normalen Shell-Sitzung aus führen Sie den "adb pull" aus. Sie müssen die Option "-a" nicht verwenden. Ich persönlich verwende sie, um die Integrität der Dateien so weit wie möglich zu erhalten. - Führen Sie den Befehl aus:
'AtomicusZro $ adb pull -a / sdcard / data / apps /'
'/ sdcard / data /: 296 Dateien wurden gezogen. 5,1 MB / s (1193942288 Byte in 221,352 Sekunden)
Und Voila!
Nebenbemerkungen :. Weiß nicht, ob es darauf ankommt, aber ich benutze einen Mac.
.Wenn Sie während der ADB-Sitzung auch keine "su-Berechtigungen" erhalten können:
1.: Möglicherweise müssen Sie ADB-Root-Zugriff gewähren.
2.: "
Superuser " ist nicht korrekt installiert. Überprüfen Sie Ihre Befehle
adb root
zuerst gelaufen ?Antworten:
Die folgenden Dateien und Verzeichnisse
/data/data
sind vor dem "Durchschnittsbenutzer" geschützt, sodass Sie sie nur dann "ziehen" können, wenn der ADB-Dämon im Stammmodus ausgeführt wird. Anders als die Datei , die Sie mit Bezug wurden (/system/buildprop
zumindest ist lesbar von allen Anwendungen), Ordner unten/data/data
sind „unsichtbar“ ( mit Ausnahme der Wurzel), so dass sie nicht einmal gelesen werden können.Damit Sie sie verwenden
adb pull
können, müssen Sie Ihren ADB-Daemon zuerst im Root-Modus ausführen. Je nach Gerät kann dies mit einem einfachenadb root
Befehl geschehen - die meisten Geräte lehnen dies jedoch ab. In diesen Fällen können Sie chainfire's adbd insecure verwenden : Installieren Sie diese App auf Ihrem Gerät, starten Sie sie dort und wechseln Sie manuell in den "unsicheren" Modus. Nunpull
sollte das gelingen.Bemerkung: Es heißt "unsicher", weil
adbd
als root jeder mit einem Computer und einem USB-Kabel auf alles auf Ihrem Gerät zugreifen kann. Nur für den Fall, dass Sie sich fragen.quelle
Wenn Ihr Telefon verwurzelt ist, gibt es drei Möglichkeiten, dies zu umgehen. Der erste ist, ADBD unsicher zu verwenden .
Das andere ist, es in einen anderen Ordner mit root zu verschieben und dann von dort zu ziehen:
Ich denke, Sie können ein Skript wie das Folgende erstellen:
und speichern Sie es irgendwo.
Schließlich ist die dritte Option
chmod -R 1777 /data/data
, aber dies ist viel unsicherer, daher wird dringend davon abgeraten.quelle
$1/*
sich das bezieht? Ist es das/data/data
Verzeichnis?Sie können Datenordner nicht direkt abrufen, da adb keinen Dateilistenzugriff darauf hat. Wenn Sie den Ordner / data ziehen möchten, können Sie dies über die Wiederherstellung tun ([Benutzerdefinierte Wiederherstellung, CWM / TWRP] führen Sie adb aus, während sich das Gerät im Wiederherstellungsmodus befindet, hoffentlich eine benutzerdefinierte Wiederherstellung). Oder kopieren Sie als root / data in ein anderes Verzeichnis (sdcard) und ziehen Sie es von dort ab.
quelle
TEIL I: Alle Dateien für einen ADB PULL vorbereiten
Das hat bei mir funktioniert: * Stellen Sie sicher, dass Sie die neueste ADB-Version verwenden.
'infocus $ adb shell'
'shell @ m1: / $ su'
Dann werden Sie feststellen, dass das "$" wie folgt zu "#" wird:
'root @ m1: / #'
-Der Hash lässt Sie wissen, dass Sie sich im SU-Modus befinden.
'root @ m1: / # mkdir / sdcard / data /'
* Gehen Sie zum Stammverzeichnis der Datei, die Sie kopieren möchten. - Für mich wollte ich beispielsweise ein Backup / eine Kopie meiner Apps erstellen und auf meinem Computer speichern.
'root @ m1: / data / app #'
'root @ m1: / data / app # ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1
com.android.chrome-1
com.android.mms-1
com.android. Vending-2 '
'root @ m1: / data / app # cp -R * / / sdcard / data /'
Sobald Sie die Eingabetaste gedrückt haben, dauert es offensichtlich eine Weile, bis die Datei kopiert ist. Der Cursor blinkt dann ein wenig, aber es sieht so aus, als würde er nichts tun, ABER ES IST! Es kopiert die Dateien, also keine Panik! und halt den Prozess nicht an !!! -Wenn Sie nur eine weitere ADB-Shell-Sitzung öffnen möchten, gehen Sie zu dem Ordner, in den Sie die Dateien übertragen, und führen Sie eine "ls" -Prüfung durch. Sie sollten feststellen, dass der leere Ordner jetzt mit den Dateien gefüllt wird. Sobald die Übertragung abgeschlossen ist, erhalten Sie Ihre Shell zurück.
Gehen Sie zu "sdcard / data" und stellen Sie sicher, dass alles mit "ls" kopiert wurde:
'root @ m1: / sdcard / data # ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1
com.android.chrome-1
com.android.mms-1'
TEIL II: Der ADB PULL
Wenn Sie zu diesem Zeitpunkt noch keinen Ordner auf dem Zielcomputer erstellt haben, tun Sie dies. Ich habe bequem einen Ordner namens "apps" erstellt
Lassen Sie uns nun den schwer fassbaren rekursiven ADB-PULL aller Dateien auf einmal ausführen: - Stellen Sie sicher, dass Sie von der ADB-Sitzung abgemeldet sind, da wir uns im SU-Modus befinden. Wir müssen zweimal beenden:
'root @ m1: / sdcard / data # exit'
'shell @ m1: / $ exit'
'AtomicusZro $ adb pull -a / sdcard / data / apps /'
Sie sollten so etwas sehen:
"[69%] /sdcard/data/com.google.android.gms-1/base.apk: 74%"
Sobald es fertig ist:
'/ sdcard / data /: 296 Dateien wurden gezogen. 5,1 MB / s (1193942288 Byte in 221,352 Sekunden)
Und Voila!
Nebenbemerkungen :. Weiß nicht, ob es darauf ankommt, aber ich benutze einen Mac.
.Wenn Sie während der ADB-Sitzung auch keine "su-Berechtigungen" erhalten können:
1.: Möglicherweise müssen Sie ADB-Root-Zugriff gewähren.
2.: "
Superuser " ist nicht korrekt installiert. Überprüfen Sie Ihre Befehle
Viel Glück.-
quelle
Arbeiten an meinem Android 7.1-Gerät. Schritte, um es zum Laufen zu bringen:
du kannst jetzt adb in deinen pc ziehen.
Hoffe das hilft
Haris
quelle