Termux escribe en la tarjeta SD

androide 5

Termux 0.54

No arraigado, no deseo

$ pwd
/storage/sdcard1
$ id
uid=10096(u0_a96) gid=10096(u0_a96) groups=1015(sdcard_rw),1028(sdcard_r),3003(inet),9997(everybody),50096(all_a96)
$ ls -l python
total 0
$ ls -dl python
drwxrwx---    2 root     sdcard_r     32768 Sep 23 22:10 python

Entonces, de acuerdo con los permisos, debería poder escribir en la carpeta python. Pero crear un archivo da permiso denegado.

He visto la solución platform.xml pero no puedo editar el archivo.

Me gustaría escribir en la tarjeta y luego mover fácilmente la tarjeta y los archivos entre máquinas.

Saludos Juan

Tal vez tenga algo que ver con SELinux. ¿Qué ls -ld /storage/sdcard1/muestra sin embargo? ¿También ha habilitado el permiso de almacenamiento en la configuración de la aplicación de Termux?
Esto es algo que Google tiene la culpa. Desde Android 5 en adelante, se han impuesto aún más restricciones a la SD externa. Ahora se espera que las aplicaciones hagan uso de una llamada DocumentProviderinterfaz, para pedir permiso al usuario para operar en la tarjeta SD. Como puede inferir de lo anterior, no hay forma de otorgar manualmente este permiso si no se solicita, sino tener privilegios de root e instalar Xposed, o tener una recuperación personalizada, soporte init.d y flash a .zippara permitir tarjeta SD acceder a cualquier aplicación.
@TomYan Lamentablemente, como puede ver en mi respuesta aquí , el permiso de Almacenamiento solo afecta /storage/emulated/0( /storage/sdcard0en Lollipop).

Respuestas (1)

Úselo termux-setup-storagepara configurar su almacenamiento. Consulte https://wiki.termux.com/wiki/Termux-setup-storage para obtener instrucciones y más información. La escritura de datos se habilitará en la carpeta privada de Termux en el almacenamiento externo a través del ~/storage/externalcual hay un enlace a Android/data/com.termux/files/su tarjeta SD externa.

Esto es para Android 6. Como mencioné, tengo Android 5.
La compatibilidad con Android 5 se eliminó en enero de 2020