9 votos

Montaje de recuperación de Android ADB Shell

*Pregunta: Necesito ayuda para montar los datos internos de un teléfono Android utilizando el ADB Shell de Android mientras la unidad está conectada por USB y en modo de recuperación. ¿Cómo puedo formar un comando de montaje adecuado? Vea a continuación para obtener información más detallada.

*FYI: Tengo experiencia desarrollando con el SDK de Android usando Java/XML. He encontrado poca documentación para el Android ADB Shell para mi propósito.

Tengo un teléfono Android Samsung GT-i9000 con la pantalla destrozada. La pantalla es negra y no responde al tacto. El teléfono no tiene activada la depuración USB ni el montaje automático USB. No puedo simplemente conectar el teléfono a través de USB para acceder a los archivos deseados (fotos, y otros datos internos). Lamentablemente no puedo confirmar la versión del sistema operativo. El teléfono no tiene tarjeta SD, todos los datos deseados están en la placa interna. El teléfono no está rooteado.

*Lo que he probado: Investigando un poco he arrancado el teléfono en modo recovery usando el método de los tres botones (VolUP + Home + Power) y he conseguido acceder al dispositivo usando el comando "adb devices" en mi máquina Win 7. Se muestra como "recuperación". Esta es la única forma en la que he podido hacer que el ordenador reconozca el dispositivo vía USB. He probado Kies, y androidscreencast sin éxito.

He podido utilizar el comando "pull" para acceder a todos los archivos del sistema Android desde el teléfono. Supongo que esto se debe a que el modo de recuperación sólo monta los archivos del sistema necesarios para las actualizaciones/reparaciones y no se molesta con los datos internos. Usando el comando "mount" puedo ver lo que considero son las rutas de los archivos que estoy buscando:

$ mount
mount
rootfs / rootfs rw 0 0
tmpfs /dev tmpfs rw,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
nodev /tmp tmpfs rw,relatime 0 0
/dev/block/stl6 /mnt/.lfs j4fs rw,relatime 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/stl9 /system rfs rw,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=
utf8 0 0
/dev/block/stl3 /efs rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,
iocharset=utf8 0 0
/dev/block/stl11 /cache rfs rw,relatime,vfat,llw,check=no,gid/uid/rwx,iocharset=
utf8 0 0

Todos mis esfuerzos por montar fracasan, normalmente con una sugerencia de uso:

$ mount rootfs / /mnt/ rw 0 0
mount rootfs / /mnt/ rw 0 0
Usage: mount [-r] [-w] [-o options] [-t type] device directory

0 votos

¿Existe la posibilidad de que pueda activar la configuración del USB a través de XML utilizando los archivos del sistema que he adquirido?

0 votos

¿el objetivo es montar la partición /data para extraer los archivos con adb?

5voto

Anonymouous Puntos 31
ls -l /dev/block/platform/dw_mmc/by-name/ 

para encontrar la ruta de acceso a la partición de datos del usuario. A continuación,

mount -t ext4 /dev/block/mmcblk0p10 /data

Compruebe el tipo de sistema de archivos correcto, así como mmcblkXpXX desde el primer comando.

Si tiene éxito, /data debe montarse correctamente

0 votos

Todos mis comandos de montaje dan como resultado mount: Operation not permitted . Creo que he encontrado lo que te refieres, aunque (mmcblk0p2, mmcblk0p1) existen en el directorio de bloques. El directorio de la plataforma no parece existir.

0 votos

Tu respuesta es correcta pero el declaró que su dispositivo no está rooteado por lo que no será de ayuda.

0voto

Jason Kester Puntos 2111

Las particiones del Samsung Galaxy S2 con datos útiles son /data y /sdcard (memoria interna) o /emmc dependiendo de la recuperación.

Para montar una partición, se emite el siguiente comando: mount <partition> <mount_point> o mount <mount_point> si el punto de montaje ya está definido. Para /data o /sdcard puede probar con mount /data y mount /sdcard .

Si el punto_de_montaje no está ya definido, habría que utilizar la partición: mount /dev/block/mmcblk0p10 /data . El -o define las opciones al llamar a montar pero como sólo quieres obtener todos los datos (leer), las opciones por defecto serían suficientes.

0 votos

Gracias por la migración al foro adecuado. El único comando de montaje adecuado que pude ejecutar fue mount -t jpg /dev/block/mmcblk0p1 /sdcard -operación no permitida. Usé mmcblk0p1 porque su ubicación mencionada no existe.

0 votos

¿Por qué utiliza -t jpg a lo largo del comando de montaje?

0voto

divided-by-zero Puntos 321

Se trata de una situación complicada. Como no tienes acceso Root no podrás montar la partición de datos a través de adb en recovery. Tampoco podrás hacer: adb backup .

La única manera posible de conseguir de alguna manera sus datos coulb ser como sigue:

  1. flashear una recuperación personalizada a través de odin ( http://forum.xda-developers.com/showthread.php?t=2204700 tal vez)

  2. arrancar en la recuperación como antes

  3. montar los datos a través de adb si tienes permisos de Root con este recovery

  4. o utilizar la navegación de teclas en el recovery para montar los datos(suele haber una opción para hacerlo) Puedes navegar con eh vol+ vol- y confirmar con power. Solo necesitas saber como se ve tu recovery desde un dispositivo con una pantalla que funcione.

  5. sacar todo de los datos y ser feliz

Quizás tengas problemas para conectarte vía adb ya que tu ordenador no estará autorizado. Esto tiene que ser comprobado. Si es así estás jodido a menos que encuentres un recovery que tenga esta característica de seguridad desactivada.

ACTUALIZACIÓN:

Acabo de encontrar algo que podría ayudarte. Se trata de un kernel rooteado tomado de la ROM stock y un recovery deshabilitado de seguridad incluido. Flashing este Kernel a través de odin debe ayudar a montar los datos o cualquier partición que desea montar con el fin de obtener sus datos de nuevo.

Hazlo: 1. Descargue el CF-Root adecuado para su versión de Android aquí: http://forum.xda-developers.com/showpost.php?p=8238938&postcount=3

  1. Accede al modo de descarga con la combinación de teclas (mantén pulsado el botón de bajar el volumen, el botón de inicio y el botón de encendido)

  2. Abrir odin(podría ser genial descargarlo antes)

  3. Haga clic en el botón PDA y seleccione CF-Root-xxx-vX.X.tar

  4. Conecta el teléfono al ordenador

  5. Asegúrese de que la repartición NO está marcada

  6. Haga clic en el botón START

  7. Esperar a que el teléfono se reinicie

Ahora puedes entrar en este recovery como antes y montar los datos a través de adb ya que deberías tener permisos de Root.

0voto

Gabriel Puntos 1565

Desde el shell adb

cat /etc/fstab

o

cat /fstab.qcom

~ # cat fstab.qcom
# Android fstab file.
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK

#<src>                                              <mnt_point>  <type>   <mnt_flags and options>                                                                           <fs_mgr_flags>
/dev/block/mmcblk0p8                                /boot        emmc     defaults                                                                                          defaults
/dev/block/mmcblk0p13                               /recovery    emmc     defaults                                                                                          defaults
/dev/block/mmcblk0p17                               /system      ext4     ro,errors=panic                                                                                   wait
/dev/block/mmcblk0p15                               /cache       ext4     noatime,nosuid,nodev,noauto_da_alloc,journal_async_commit,errors=panic,barrier=1                  wait,check
/dev/block/mmcblk0p28                               /data        ext4     noatime,nosuid,nodev,data=ordered,noauto_da_alloc,journal_async_commit,errors=panic               wait,check,encryptable=footer,length=-16384
/dev/block/mmcblk0p28                               /data        f2fs     rw,discard,nosuid,nodev,noatime,nodiratime,inline_xattr                                           wait,check,encryptable=footer,length=-16384

# zRAM
/dev/block/zram0                                    none         swap     defaults                                                                                          zramsize=201326592

# vold managed volumes
/devices/platform/msm_sdcc.4/mmc_host               auto         auto     defaults                                                                                          voldmanaged=sdcard1:auto,noemulatedsd
/devices/platform/msm_hsusb_host.0                  auto         auto     defaults                                                                                          voldmanaged=usbdisk:auto
~ # 

debería darle el nombre de la partición que está buscando.

Dispositivo: SG-i9001 - Samsung Galaxy S Plus

0voto

Mike Willekes Puntos 2110

Ya tuve el mismo problema. La razón principal por la que no puedes volver a montar el sistema de archivos y otras particiones de tu dispositivo Android es porque no estás ejecutando el adb shell en modo Root. Esto es lo que hice antes:

$ adb shell 
$ su 
# mount -o rw, remount /system

Esto debería resolver tus problemas. Por supuesto, en mi caso estoy ejecutando esto en un dispositivo Android rooteado (LineageOS Android 7.1.2 build). Puede ser diferente en su caso, pero básicamente la idea es la misma.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X