pull / dati adb fallito


19

Ho effettuato il root del mio dispositivo HTC Evo Design 4G e provo ad aggiungere dati pull / data e dice "0 file pull 0 file saltati"

Sono stato in grado di estrarre /System/build.prop. Come posso estrarre la cartella principale.

Grazie Iua


1
Hai corso per adb rootprimo?
onik,

Sì, ma la radice adb non ha avuto successo. Nessun permesso. Ma potrei adb shell su. Dà #.
user3734225

Risposte:


20

I file e le directory sottostanti /data/datasono protetti dall '"utente medio", quindi non puoi semplicemente "estrarli" a meno che il demone ADB non sia in esecuzione in modalità root. A parte il file a cui ti riferivi ( /system/buildpropè almeno leggibile da tutte le app), le cartelle sottostanti /data/datasono "invisibili" (tranne che per root), quindi non possono nemmeno essere lette.

Per poterle utilizzare adb pull, è necessario prima eseguire il demone ADB in modalità root. A seconda del dispositivo, un semplice adb rootcomando potrebbe farlo, ma la maggior parte dei dispositivi rifiuta di farlo. In questi casi, puoi usare adbd insecure di chainfire : installa questa app sul tuo dispositivo, avviala lì e passa manualmente alla modalità "insicure". Ora pulldovrebbe avere successo.

Nota: si chiama "insicuro" perché l'esecuzione adbdcome root consente a tutti con un computer e un cavo USB di accedere a tutto sul dispositivo. Nel caso ti chiedessi.


Grazie! A parte l'insicuro di chainfire adbd, posso impostare il flag ro.secure nella proprietà build? Posso usare la shell adb setprop ro.secure 0?
user3734225

Non l'ho mai provato, né so esattamente a cosa serva quella bandiera - quindi non posso dirlo. (A proposito: se hai trovato utile la risposta, sei il benvenuto a "votarla" (il modo SE per dire "grazie") - o "accettarla" quando ha risolto il nostro problema;)
Izzy

1
adbd lavoro insicuro per me :)
user3734225

6

Se il tuo telefono è rootato, ci sono tre modi per aggirare questo. Il primo è utilizzare ADBD insicuro .

L'altro è quello di spostarlo in un'altra cartella con root e quindi estrarlo da lì:

$ adb shell

shell@android:/ $ su
root@android:/ # mkdir /sdcard/data
root@android:/ # cp /data/data/* /sdcard/data
root@android:/ # exit
shell@android:/ $ exit 

$ adb pull /sdcard/data .
$ adb shell

shell@android:/ $ rm -r /sdcard/data/
shell@android:/ $ exit

Penso che tu possa costruire uno script come:

echo 'echo "mkdir /sdcard/data; cp $1/* /sdcard/data; exit" | su; exit' | adb shell
adb pull /sdcard/data .
echo 'rm -r /sdcard/data; exit' | adb shell

e salvalo da qualche parte.

Infine, la terza opzione è chmod -R 1777 /data/data, ma questa è molto più pericolosa, quindi è altamente scoraggiata.


Posso chiedere a cosa si $1/*riferisce? È la /data/datadirectory?
Emen,

risposta meravigliosa
Dan Bradbury,

5

Non è possibile estrarre direttamente la cartella dei dati poiché adb non ha accesso alla lista dei file. Se si desidera estrarre la cartella / data, è possibile farlo tramite il ripristino ([Ripristino personalizzato, CWM / TWRP] eseguire adb mentre il dispositivo è in modalità di ripristino, si spera un ripristino personalizzato). O come root, copia / dati in un'altra directory (sdcard) e estrailo da lì.


Grazie. Ma sono stato in grado di estrarre il file build.prop nella cartella / Sistema. adb shell su e quindi posso elencare i file nella cartella principale. Ho letto in un'impostazione di ricerca di Google ro.secure build property su 0 aiuterà a pull / data. È vero? In tal caso, c'è un modo per farlo?
user3734225

È possibile eseguire il pull di build.prop perché / system dispone delle autorizzazioni per l'elenco. Puoi cambiare ro.secure = 0 in boot.img, ma questo è un passaggio davvero complesso. Sarebbe più semplice installare un ripristino personalizzato e farlo da lì.
Hiemanshu Sharma,

Grazie mille! Il mio scopo principale dello sforzo è implementare un'applicazione forense correlata come progetto universitario dell'ultimo anno. Temo davvero che l'installazione del ripristino personalizzato eliminerà le evidenze dal dispositivo. Hai qualche idea sull'argomento.
user3734225

Aggiungendo al mio commento precedente - A che cosa serve setprop della shell adb? Non posso usarlo in questo caso?
user3734225

1
Un programma di recupero forense che si basa sul root del telefono e sul debug attivato non sembra molto utile.
Dan Hulme,

1

PARTE I: Preparare tutti i file per un PULL ADB

Questo è ciò che ha funzionato per me: * Assicurati di utilizzare l'ultima versione di ADB.

  • Avvia la sessione ADB:

'infocus $ adb shell'

  • Ottieni i diritti SU una volta nella sessione ADB tutto ciò che devi fare è digitare "su" in questo modo:

'shell @ m1: / $ su'

Quindi noterai che "$" diventa "#", in questo modo:

'root @ m1: / #'

-L'hash ti fa sapere che sei in modalità SU.

  • Crea una cartella sulla / sdcard del dispositivo

'root @ m1: / # mkdir / sdcard / data /'

* vai alla radice del file che vuoi copiare -Per me, ad esempio, volevo fare un backup / copia delle mie app e archiviarlo sul mio computer così:

'root @ m1: / data / app #'

  • Un esempio di ciò che ottengo se "ls" quella cartella:

'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'

  • Per copiare in modo ricorsivo con il comando ADB "cp", usa l'opzione "-R" e poiché volevo copiare tutto in esso ho usato il carattere jolly "*" in questo modo:

'root @ m1: / data / app # cp -R * / / sdcard / data /'

  • Una volta premuto Invio, se il file è abbastanza grande, ovviamente, occorrerà un po 'di tempo per copiare i file, quindi il cursore lampeggerà pigramente per un po', sembrerà se non sta facendo nulla, MA È! sta copiando i file, quindi non fatevi prendere dal panico! e non interrompere il processo !!! -Se vuoi semplicemente aprire un'altra sessione della shell ADB e andare nella cartella in cui stai trasferendo i file e fare un controllo "ls" e dovresti vedere che la cartella vuota ora viene popolata con i file. Una volta completato il trasferimento, riavrai la shell.

  • Vai su "sdcard / data" e assicurati che tutto sia stato copiato "ls":

'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'

PARTE II: L'ADB TULL

  • A questo punto se non hai creato una cartella sul computer di destinazione, fallo. Ho comodamente creato una cartella chiamata "app"

  • Ora, facciamo l'elusivo PULL ADB ricorsivo di tutti i file contemporaneamente: -Assicurati di essere disconnesso dalla sessione ADB, poiché siamo in modalità SU, dovremo uscire due volte:

'root @ m1: / sdcard / data # exit'
'shell @ m1: / $ exit'

  • Da una normale sessione di shell esegui "adb pull", non devi usare l'opzione "-a", la uso personalmente per mantenere il più possibile l'integrità dei file. - esegui il comando:

'AtomicusZro $ adb pull -a / sdcard / data / apps /'

Dovresti vedere qualcosa del genere:

"[69%] /sdcard/data/com.google.android.gms-1/base.apk: 74% '

Una volta fatto:

'/ sdcard / data /: 296 file estratti. 5,1 MB / s (1193942288 byte in 221.352s) '

E voilà!

Note a
margine : .Non so se conta ma uso un Mac.
.Se durante la sessione ADB non riesci nemmeno a ottenere i "privilegi su":
1 °: Probabilmente devi dare accesso root ADB
2 °: "superutente" non è installato correttamente.
Controlla i tuoi comandi

In bocca al lupo.-


Non ho bisogno di essere radicato per questo?
neverMind9

0

lavorando sul mio dispositivo Android 7.1. passaggi per farlo funzionare:

  1. scarica la versione non sicura di adbd di leroy su https://nofile.io/f/86605d8qsJs/adbd-Insecure-v2.00.apk
  2. installa nel tuo telefono.
  3. esegui shell adb nella tua directory adb
  4. digitare "su" in modo da poter ottenere il "#"
  5. digitare "setenforce 0"
  6. abilita adbd non sicuro. il debug USB si disattiva
  7. attiva e disattiva il debug USB dalle opzioni dello sviluppatore
  8. spegnere e riaccendere adbd non sicuro.

ora puoi adb pull nel tuo pc.

Spero che sia di aiuto


Haris

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.