2 votos

¿Cómo puedo ver la root (/) con Termux si termux-setup-storage no funciona?

Después de revisar esto, usé termux-setup-storage en mi teléfono y en el emulador Andy Android.

Después de ejecutar el comando anterior, puedo ver el directorio root con ls en el emulador Andy pero no en el teléfono.

INFORMACIÓN:
Versión de Android 7.1.1
Xperia XZ
SoftBank bloqueó la BIOS del teléfono (o lo que sea) así que no puedo rootearlo.
Se concedieron permisos de almacenamiento.

¿Qué más puedo intentar para usar ls en el directorio root de mi teléfono?

1 votos

En el tema de Linux, "root" se refiere a la root de la jerarquía de archivos /, no a la "root del almacenamiento de Android" que suele ser /storage/emulated/0. ¿A cuál te refieres?

0 votos

Root como en /. No mencioné el almacenamiento de Android. El script hace varias cosas como configurar el almacenamiento de Android, pero también da permiso para ver la root en Andy y me refiero a la root real, así que me pregunto qué salió mal en el teléfono.

0 votos

Es posible que quieras proporcionar más información, como la versión de Android.

4voto

Jack Wade Puntos 231

termux-setup-storage solo concede android.permission.WRITE_EXTERNAL_STORAGE que permite a la aplicación acceder a la tarjeta SD interna, es decir, /sdcard.

El init de Android crea rootfs / con permisos 0:0 (uid:gid) y 0755 (modo). Por lo tanto, el directorio root debería ser accesible para cualquier usuario no root.
Sin embargo, SELinux juega su papel restringiendo el acceso no autorizado a rootfs. Puedes ver tales rechazos de la política mediante:

dmesg | grep 'avc: denied'

* Lo más probable es que SELinux también niegue este comando si se ejecuta desde una aplicación no root.

Para ver todas las reglas de SEPolicy, se puede utilizar la herramienta sesearch de setools-android.

Para configurar SELinux en modo permisivo:

echo 0 >/sys/fs/selinux/enforce
# o
setenforce 0

O añadir una excepción a la política de SELinux:

supolicy --live 'allow untrusted_app rootfs dir { read open }'

* La herramienta supolicy es proporcionada por soluciones de root como Magisk, SuperSu

Esta política permite leer rootfs pero aún así puedes obtener errores porque la lectura de atributos de archivos/directorios bajo rootfs no está permitida por la política.

Ambas soluciones necesitan privilegios de root y no son persistentes, es decir, necesitan ser configuradas después de reiniciar.

Por lo tanto, si estás ejecutando una versión de producción de Android sin rootear (con SELinux obligatorio), no podrás leer rootfs /.

0 votos

Gracias por esto. También: "dmesg | grep 'avc: denied'" arroja dmesg: leer búfer del kernel falló: Permiso denegado. ¡Si ni siquiera puedo usar dmesg, creo que estoy en aprietos!

1 votos

@chrips sí, tu política SELinux no permite que el dmesg lea el registro del kernel, por lo que obtienes otro avc denial al intentar leer denegaciones de avc ya ocurridas.

1voto

Idsa Puntos 303

Si no puedes rootear tu teléfono, no podrás ver root / El almacenamiento-termux permite acceder al almacenamiento de la tarjeta SD y NO al root /

Nota: El emulador Andy ESTÁ rooteado por defecto - Gracias l3l_aze, iBug, Death Mask Salesman, Irfan Latif

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