2 votos

Tengo Root & sdcard externa montada rw, pero mv produjo "Permiso Denegado"

Tengo una vieja tablet con LNOS 14.1. Tiene una SDCard externa con algunos libros, vídeos, etc. La tarjeta está configurada como almacenamiento móvil. .android_secure es un directorio vacío, y aunque no he instalado deliberadamente ninguna aplicación en la tarjeta, parece que hay algunas en el Android directorio. Me he dado cuenta de que aunque tengo Root en la tablet, hay cosas que no puedo hacer a través de una shell o por ssh'ing. No puedo mirar en .androd_secure por ejemplo, pero más importante, aunque puedo copiar en root de la tarjeta SD, no puedo copiar en cualquiera de las subcarpetas ¡! Puedo entrar y leer desde las subcarpetas, al igual que aplicaciones como Kodi y Librara.

Estoy seguro de que tengo Root, ya que he establecido el permiso de acceso en las herramientas de desarrollador, y múltiples aplicaciones han hecho que el sistema operativo produzca ventanas emergentes solicitando acceso Root. Además, la aplicación Root Verifier informa que tengo Root. Además, Termux y simpleSSHD me permiten su - root Y puedo hacer algunas cosas con Root que no puedo hacer de otra manera. Por ejemplo, ¡sin Root no puedo escribir en la SDCard en absoluto! Pero todavía no puedo hacer esto.

Un amigo sugirió problemas con SELinux, así que incluyo ls -Z . ¿Hay alguna forma de evitarlo?


# whoami
root

# pwd
/storage/1dc31997-9ebf-4573-9c75-3e57793b4071

# cat /proc/mounts | grep "/storage/1"
/dev/fuse /storage/1dc31997-9ebf-4573-9c75-3e57793b4071 fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0

# ls -la
ls: ./.android_secure: Permission denied
total 5852
drwxrwx--x 12 root sdcard_rw    4096 2020-12-12 01:53 .
drwxr-xr-x  5 root root          100 2020-12-11 18:49 ..
drwxrwx--x  5 root sdcard_rw    4096 2020-12-09 22:56 .Trash-1000
drwxrwx--x  2 root sdcard_rw    4096 2020-12-10 22:49 AOSP.7.0.Root.Install.amaces
drwxrwx--x  5 root sdcard_rw    4096 2020-12-09 22:04 Android
drwxrwx--x  2 root sdcard_rw    4096 2020-12-10 04:38 Apps
drwxrwx--x 25 root sdcard_rw    4096 2020-12-06 19:04 Books
drwxrwx--x  2 root sdcard_rw    4096 2020-12-10 22:45 LNOS.14.1.amaces
drwxrwx--x  2 root sdcard_rw    4096 2000-01-02 12:25 LOST.DIR
drwxrwx--x  3 root sdcard_rw    4096 2020-10-25 02:18 TWRP
drwxrwx--x  3 root sdcard_rw    4096 2020-10-29 23:41 Videos
-rw-rw----  1 root sdcard_rw    5294 2020-12-12 01:53 bottled.zip
-rw-rw----  1 root sdcard_rw 5888840 2020-12-11 04:49 org.fdroid.fdroid.privileged.ota_2110.zip

# cp bottled.zip bottled.1.zip

# ls -lZ
ls: ./.android_secure: Permission denied
total 5848
drwxrwx--x  2 root sdcard_rw u:object_r:fuse:s0    4096 2020-12-10 22:49 AOSP.7.0.Root.Install.amaces
drwxrwx--x  5 root sdcard_rw u:object_r:fuse:s0    4096 2020-12-09 22:04 Android
drwxrwx--x  2 root sdcard_rw u:object_r:fuse:s0    4096 2020-12-10 04:38 Apps
drwxrwx--x 25 root sdcard_rw u:object_r:fuse:s0    4096 2020-12-06 19:04 Books
drwxrwx--x  2 root sdcard_rw u:object_r:fuse:s0    4096 2020-12-10 22:45 LNOS.14.1.amaces
drwxrwx--x  2 root sdcard_rw u:object_r:fuse:s0    4096 2000-01-02 12:25 LOST.DIR
drwxrwx--x  3 root sdcard_rw u:object_r:fuse:s0    4096 2020-10-25 02:18 TWRP
drwxrwx--x  3 root sdcard_rw u:object_r:fuse:s0    4096 2020-10-29 23:41 Videos
-rw-rw----  1 root sdcard_rw u:object_r:fuse:s0    5294 2020-12-12 03:26 bottled.1.zip
-rw-rw----  1 root sdcard_rw u:object_r:fuse:s0    5294 2020-12-12 01:53 bottled.zip
-rw-rw----  1 root sdcard_rw u:object_r:fuse:s0 5888840 2020-12-11 04:49 org.fdroid.fdroid.privileged.ota_2110.zip

# mv bottled.zip Videos
mv: bad 'bottled.zip': Permission denied

# cd Videos

# ls -lZ                                                                                                                                             
total 7434136
-rw-rw---- 1 root sdcard_rw u:object_r:fuse:s0  402069980 2015-07-24 03:56 Hold Fast-15351476.mp4

# mv ../bottled.zip .
mv: bad '../bottled.zip': Permission denied

1 votos

Lo más probable es que sea un problema con SELinux o FUSE. A Root no siempre se le permite hacer nada: Android.stackexchange.com/a/221485/218526 . ¿Cuál es el contexto SELinux de tu shell? ¿Has probado con permissive ¿modo? Comprobado dmesg | grep avc ? ¿Intentó escribir en el sistema de archivos subyacente sin pasar por FUSE?

0 votos

@IrfanLatif - Soy débil en SELinux, así que no estoy seguro de cómo establecer el modo permisivo (lo buscaré). dmesg produce un montón de avc denied pero ninguno asociado a mi intento de copiar, por ejemplo, en la subcarpeta de vídeos. Tampoco estoy seguro de cómo evitar el FUSE, pero lo buscaré también. Gracias por las sugerencias.

0 votos

Ya veo. Es tan sencillo como ir a este directorio: /mnt/media_rw/1dc31997-9ebf-4573-9c75-3e57793b4071 en lugar de este: /storage/1dc31997-9ebf-4573-9c75-3e57793b4071 . Este último es una versión montada en FUSE del primero. Se supone que eso permite a los usuarios acceder a ella. Al menos, eso es según el enlace que ofreciste. (Pero entonces, ¿por qué necesito Root para ver esa última carpeta?)

1voto

Diagon Puntos 143

@IrfanLatif ofreció un comentario que incluía un excelente enlace a todas las cosas que Root no puede hacer . Resulta que, leer un sistema de archivos FUSE propiedad de otro usuario, es uno de ellos. Android, montará un dispositivo en múltiples lugares, cada uno con diferentes permisos. Al ir a /storage/[UUID], estás visitando un sistema de archivos FUSE. Por otro lado, yendo a /mnt/media_rw/[UUID], estás visitando el sistema de archivos directamente. Además, puede haber problemas de permisos de SELinux, como se describe en ese enlace, pero en mi caso no aparecieron.

$ mount | grep 1dc31997
/dev/block/vold/public:179_97 on /mnt/media_rw/1dc31997-9ebf-4573-9c75-3e57793b4071 type f2fs (rw,dirsync,context=u:object_r:sdcard_posix:s0,nosuid,nodev,noatime,background_gc=on,user_xattr,active_logs=6)
/dev/fuse on /mnt/runtime/default/1dc31997-9ebf-4573-9c75-3e57793b4071 type fuse (rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other)
/dev/fuse on /mnt/runtime/read/1dc31997-9ebf-4573-9c75-3e57793b4071 type fuse (rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other)
/dev/fuse on /mnt/runtime/write/1dc31997-9ebf-4573-9c75-3e57793b4071 type fuse (rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other)
/dev/fuse on /storage/1dc31997-9ebf-4573-9c75-3e57793b4071 type fuse (rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other)

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