adb pull / data falla

19

He rooteado mi dispositivo HTC Evo Design 4G e intento agregar datos de extracción / datos y dice "0 archivos extraen 0 archivos omitidos"

Pude extraer /System/build.prop. ¿Cómo puedo extraer la carpeta raíz?

Gracias iua

usuario3734225
fuente
1
¿Corriste adb rootprimero?
onik
Sí, pero la raíz adb no fue exitosa. Sin autorización. Pero podría adb shell su. Da #.
user3734225

Respuestas:

20

Los archivos y directorios a continuación /data/dataestán protegidos del "usuario promedio", por lo que no puede simplemente "extraerlos" a menos que el demonio ADB se ejecute en modo raíz. Aparte del archivo al que se refería ( /system/buildpropal menos es legible por todas las aplicaciones), las carpetas a continuación /data/datason "invisibles" (excepto la raíz), por lo que ni siquiera pueden leerse.

Para poder utilizarlos adb pull, primero debe hacer que su demonio ADB se ejecute en modo raíz. Dependiendo del dispositivo, un adb rootcomando simple podría hacer eso, pero la mayoría de los dispositivos se negarán a hacerlo. En esos casos, puede utilizar el inseguro adbd de chainfire : instale esta aplicación en su dispositivo, iníciela allí y cambie manualmente al modo "inseguro". Ahora el pulldebería tener éxito.

Observación: Se llama "inseguro" porque ejecutarse adbdcomo root le da a todos con una computadora y un cable USB acceso a todo en su dispositivo. Por si acaso te lo preguntas.

Izzy
fuente
¡Gracias! Además de la inseguridad de chainfire adbd, ¿puedo configurar el indicador ro.secure en la propiedad de construcción? ¿Puedo usar adb shell setprop ro.secure 0?
user3734225
Nunca lo he intentado, ni sé exactamente para qué sirve esa bandera, así que no puedo decirlo. (Por cierto: si encuentra útil la respuesta, puede "votarla" (la forma SE de decir "gracias") o "aceptarla" cuando resolvió nuestro problema;)
Izzy
1
adbd trabajo inseguro para mí :)
user3734225
6

Si su teléfono está rooteado, hay tres formas de solucionarlo. El primero es usar ADBD inseguro .

El otro es moverlo a otra carpeta con root y luego sacarlo de allí:

$ 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

Creo que puedes construir un script como:

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

y guardarlo en alguna parte.

Finalmente, la tercera opción es chmod -R 1777 /data/data, pero esto es mucho más inseguro, por lo que se desaconseja mucho.

Juan
fuente
¿Puedo preguntar a qué se $1/*refiere? ¿Es el /data/datadirectorio?
Emen
respuesta vonderful
Dan Bradbury
5

No puede extraer la carpeta de datos directamente ya que adb no tiene acceso a la lista de archivos. Si desea extraer la carpeta / data, puede hacerlo a través de la recuperación ([Recuperación personalizada, CWM / TWRP] ejecute adb mientras el dispositivo está en modo de recuperación, con suerte una recuperación personalizada). O como root, copie / data a otro directorio (sdcard) y extráigalo desde allí.

Hiemanshu Sharma
fuente
Gracias. Pero pude extraer el archivo build.prop en la carpeta / System. adb shell su y luego puedo enumerar los archivos en la carpeta raíz. Leí en una configuración de búsqueda de Google la propiedad de construcción ro.secure a 0 ayudará a extraer / datos. ¿Es esto cierto? Si es así, ¿hay alguna manera de hacerlo?
user3734225
Puede extraer build.prop porque / system tiene permiso de listado. Puede cambiar ro.secure = 0 en su boot.img, pero ese es un paso realmente complejo. Sería más fácil instalar una recuperación personalizada y hacerlo desde allí.
Hiemanshu Sharma
¡Muchas gracias! Mi objetivo principal del esfuerzo es implementar una aplicación forense relacionada como un proyecto universitario de último año. Tengo mucho miedo, instalar la recuperación personalizada eliminará las evidencias del dispositivo. ¿Tienes alguna idea sobre el tema?
user3734225
Agregando a mi comentario anterior: ¿para qué sirve adb shell setprop? ¿No puedo usarlo en este caso?
user3734225
1
Un programa de recuperación forense que se base en el teléfono rooteado y que la depuración esté activada no suena muy útil.
Dan Hulme
1

PARTE I: Preparando todos los archivos para un ADB PULL

Esto es lo que funcionó para mí: * Asegúrese de estar utilizando la última versión de ADB.

  • Comience la sesión ADB:

'infocus $ adb shell'

  • Obtenga los derechos SU una vez en la sesión ADB, todo lo que tiene que hacer es escribir "su" de esta manera:

'shell @ m1: / $ su'

Entonces notarás que el "$" se convierte en "#", así:

'root @ m1: / #'

-El hash te permite saber que estás en modo SU.

  • Haga una carpeta en la tarjeta / sd del dispositivo

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

* dirígete a la raíz del archivo que deseas copiar -Para mí, por ejemplo, quería hacer una copia de seguridad / copia de mis aplicaciones y almacenarla en mi computadora para:

'root @ m1: / data / app #'

  • Un ejemplo de lo que obtengo si "ls" esa carpeta:

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

  • Para copiar de forma recursiva con el comando "cp" de ADB, use la opción "-R" y como quería copiar todo, utilicé el comodín "*" de esta manera:

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

  • Una vez que presione Intro, si el archivo es bastante grande, obviamente tomará un tiempo copiar los archivos, por lo que el cursor parpadeará un poco, parecerá que si no hace nada, ¡PERO ES! está copiando los archivos, ¡así que no se asuste! y no pares el proceso !!! -Si desea simplemente abrir otra sesión de shell ADB y dirigirse a la carpeta donde está transfiriendo los archivos y hacer una verificación "ls" y debería ver que la carpeta vacía ahora se está llenando con los archivos. Una vez que se realiza la transferencia, recuperarás tu caparazón.

  • Dirígete a "sdcard / data" y asegúrate de que todo se haya copiado "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: EL ADB PULL

  • En este punto, si no ha creado una carpeta en la máquina de destino, hágalo. Convenientemente creé una carpeta llamada "aplicaciones"

  • Ahora, hagamos el escurridizo ADB PULL recursivo de todos los archivos a la vez: -Asegúrese de que haya cerrado la sesión de ADB, ya que hemos estado en modo SU, tendremos que salir dos veces:

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

  • Desde una sesión de shell normal ejecute el "adb pull", no tiene que usar la opción "-a", yo personalmente la uso para mantener la integridad de los archivos lo más posible. - ejecuta el comando:

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

Debería ver algo como esto:

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

Una vez hecho esto:

'/ sdcard / data /: 296 archivos extraídos. 5.1 MB / s (1193942288 bytes en 221.352s) '

¡Y voilá!

Notas al
margen :. No sé si importa, pero uso una Mac.
.Si durante la sesión de ADB no puede obtener "privilegios su" tampoco:
primero: probablemente necesite otorgar acceso raíz a ADB
segundo: "superusuario" no está instalado correctamente
. Verifique dos veces sus comandos

Buena suerte.-

AtomicusZro
fuente
¿No necesito estar enraizado para eso?
neverMind9
0

trabajando en mi dispositivo Android 7.1. pasos para que funcione:

  1. descargue la versión insegura de adbd de leroy en https://nofile.io/f/86605d8qsJs/adbd-Insecure-v2.00.apk
  2. Instalar en su teléfono.
  3. ejecute adb shell en su directorio adb
  4. escriba "su" para que pueda obtener el "#"
  5. escriba "setenforce 0"
  6. habilitar inseguro adbd. la depuración del usb se apaga
  7. activar y desactivar la depuración usb de las opciones de desarrollador
  8. apague y vuelva a encender el inseguro inseguro.

ahora puedes acceder a tu PC.

Espero que esto ayude


Haris

Haris Cheong
fuente