¿Cómo puedo acceder a múltiples espacios de usuario desde adb?

9

Estoy ejecutando KitKat en una tableta con dos usuarios: primario (propietario) y secundario. Necesito acceder a un archivo generado por una aplicación del usuario secundario.

Cuando conecto la tableta en mi escritorio (Ubuntu) a través de USB, se monta como un dispositivo multimedia (MTP) y me muestra la carpeta base para el usuario actualmente activo. [1] Pero el archivo que quiero está en otra parte del sistema, por lo que me conecté desde la línea de comando a través adb shell.

La conexión a través de ADB me da acceso a carpetas más profundas ( /mnt /procetc.) pero no pude encontrar el archivo donde lo esperaba [2], así que busqué de /sdcardtodos modos. Para mi sorpresa, reconocí el contenido como la carpeta base de la cuenta del propietario, a pesar de que el usuario actualmente activo es el usuario secundario.

Esto también me dice que, si alguna vez lo necesito, no podré acceder a la carpeta base para el usuario secundario a través de adb shell.

¿Cómo puedo acceder a la tableta adb shellcomo usuario secundario, en lugar de como usuario primario (propietario)? (Poder acceder a los archivos del usuario secundario es lo suficientemente bueno).

[1] No estoy seguro de cuál es el término correcto aquí. Me refiero a la carpeta con Android, Descarga e Imágenes, específica para un usuario en particular.

[2] FWIW Estoy exportando un archivo OPML desde Flym . Flym informa que la exportación de OPML se genera en, /storage/emulated/10/Flym_123456789.opmlpero solo puedo llegar hasta /storage/emulatedallí: no se llama a ninguna subcarpeta 10, solo legacyque es lo mismo que /sdcard(la carpeta base principal / del propietario, no la carpeta base del usuario secundario).

david.libremone
fuente
Para aquellos que termina en este post con igual o similar problema, consulte ¿Cómo puedo acceder a la tarjeta sd emulado por otro usuario de un nexo arraigado 10
Señor del Fuego

Respuestas:

3

Las legacy/ubicaciones siempre apuntan a los datos del usuario actualmente activo. Permítanme señalar primero algunas preguntas / respuestas relacionadas que tratan explícitamente esos problemas de almacenamiento multiusuario para algunos antecedentes:

Entonces, para encontrar los archivos del usuario secundario:

  • enumerar los subdirectorios de /data/mediay/storage/emulated
  • restringir su búsqueda a subdirectorios cuyos nombres son simplemente "números"
  • los 0candidatos pertenecen al propietario, los números más altos son de usuarios secundarios
  • El almacenamiento externo es algo diferente: /sdcard/0apunta a la tarjeta sd interna, mientras que /sdcard/1debe ser externa (si está disponible). Del mismo modo para el almacenamiento conectado a través de OTG

Recuerde que es posible que deba ser root para acceder a los datos de un usuario que no sea el que está actualmente activo en el dispositivo.

Ver también:

Izzy
fuente
esto me ayuda a entender lo que debería ver, pero lo que realmente veo es solo / almacenamiento / emulado / heredado (sin carpetas numéricas) y no tengo acceso a / datos / medios (permiso denegado) - Voy a intentarlo reiniciar y nunca iniciar sesión como propietario
david.libremone
Como escribí: "es posible que deba ser root" (lo que explica el "permiso denegado"). ¿Su dispositivo está rooteado?
Izzy
no lo es (¿un poco asustado, parece que no hay un proceso confiable?)
david.libremone
pero puedo confirmar esto: reinicie el dispositivo, no inicie sesión como propietario, inicie sesión como secundario, conecte usb, acceda a través de MTP: puede ver la carpeta de usuario secundaria, acceda a través de adb shell: puede ver / almacenamiento / emulado / heredado como usuario propietario (no usuario secundario): no aparecen otras carpetas en / almacenamiento / emulado
david.libremone
Al iniciar sesión con el usuario secundario, emulated/debe apuntar a los datos del usuario secundario. No hay forma de acceder a todos sin root. Y correcto, no hay un proceso oficial para rootear tu dispositivo; es posible que desee consultar nuestro wiki de etiqueta de enrutamiento y el índice de enraizamiento para verificar los generales y su dispositivo. Si no está en la lista, puede hacer una nueva pregunta para esto.
Izzy