Borrar carpetas con problemas de permisos en Android


Hola lectores

Tengo un Samsung Galaxy S3 que como otros dispositivos con Android 4 (ICS) ahora tienen la memoria interna en una misma partición que los datos del sistema de manera que no es necesario que el sistema desmonte la partición mientras se conecta el celular al PC (por ej pueden ver sus fotos desde el celular mientras desde el PC se están subiendo unos archivos al celular y se están viendo las carpetas), eso se logra con el uso de MTP, aunque esto acarrea más problemas para usuarios de GNU/Linux porque al montar como unidad externa el celular, se pierde la conexión constantemente porque MTP fue pensado para sistemas Windows inicialmente, en un próximo post hablaré de las alternativas que tenemos para acceder a los archivos de nuestro celular Android con estas características vía GNU/Linux.

Me conecté al celular por SSH con FileZilla (más sobre esto en el próximo post) y creé unas carpetas para meter unos documentos PDF, desde allí empezaron mis problemas dado que Adobe Reader no me reconoció los PDF’s y luego no pude eliminar las carpetas (el motivo de este post). Tengo mi celulear rooteado por lo que se supone que hay permiso para eliminar cualquier archivo siempre y cuando el sistema de archivos esté montado con permisos de escritura y podía eliminar cualquier archivo en la memoria interna (reconocida por Android 4.0 y superior como /data/media, /storage/sdcard0 pero se puede acceder por cualquier medio). Esto fue lo que pasó:

  • El problema fue que yo podía eliminar cualquier archivo en la sdcard interna menos las carpetas que había creado previamente
  • Algo que noté más raro aún fue que puedo renombrar las carpetas y hasta copiarlas a otra partición con permisos de escritura como /data pero no puedo cortar las carpetas o eliminarlas de la SD interna: renombré las carpetas a .garbage and .trash pero tampoco pude eliminarlas
  • Traté también creándome dos carpetas con los mismos nombres en el PC y subirlas a la memoria del teléfono pero no sirvió tampoco, quedé con los mismos errores de no poder eliminarlas por permisos
  • Traté de crear un archivo en las carpetas pero también falló
    touch .garbage/algo
    touch: .garbage/algo: Permission denied
  • Por CMW (ClockWorkMode, voy a escribir un tutorial de rooteo pronto…) probé formatear la SD pero como no es una partición aparte falla el formateo al hacer umount, wice wipes (incluso reinstalé CM10 -una ROM de Android muy popular- y sigue igual), también traté un hard reset (*2767*3855#) pero el código no hace nada en CM10 (creo que es propio de Samsung con stock y no aplica para mi celular con una ROM personalizada)

    Después de estar metido un rato en la terminal buscando soluciones y mirando los puntos demontaje encontré esto

    /dev/fuse on /storage/sdcard0 type fuse (rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,
    default_permissions,allow_other)

    que sifnifica que se monta la memoria interna como un usuario y grupo específicos (1023), así que verifiqué en la lista de procesos qué usuarios los estaban ejecutando y determinar cuál era el usuario con ID 1023 y determiné que era el usuario media_rw con el cual se estaba ejecutando este proceso

    media_rw   0:00 /system/bin/sdcard /data/media 1023 1023

    En este paso determiné que la memoria interna se monta como este usuario y quizá logeandose como él (su media_rw) se pudieran borrar las carpetas.

    Probando con el descubrimiento anterior finalmente pude borrar las carpetas con el siguiente procedimiento:

    1. Logearse como root (pueden omitir esto si se conectan por SSH con SSHDroid)

    su

    2. Montar /system con permisos de escritura

    mount -o rw,remount -t ext4 /dev/block/mmcblk0p9 /system

    3. Volver a ejecutar el comando sdcard

    /system/bin/sdcard /data/media 1023 1023

    4. Ir a la carpeta /data/media y borrar las carpetas no deseadas (en mi caso se llaman .trash y .garbage)

    rm -rf .trash .garbage

    5. Volver a montar como sólo lecutra /system (por seguridad)

    mount -o ro,remount -t ext4 /dev/block/mmcblk0p9 /system

    6. Se puede verificar que ya no existen las carpetas con

    ls -lsa /data/media/

    y la salida debería ser algo como (no están las carpetas .trash y .garbage

    # ls -lsa /data/media/
     total 443361
        4 drwxrwxr-x   14 media_rw media_rw      4096 Oct 12 10:25 .
        4 drwxrwx--x   23 system   system        4096 Oct 12 06:01 ..
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:06 .mmsyscache
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:01 Alarms
        4 drwxrwxr-x    3 media_rw media_rw      4096 Oct 12 06:03 Android
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:01 DCIM
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:01 Download
        4 drwxrwxr-x    5 media_rw media_rw      4096 Oct 12 06:09 GOLauncherEX
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:01 Movies
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:01 Music
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:01 Notifications
        4 drwxrwxr-x    3 media_rw media_rw      4096 Oct 12 08:55 Pictures
        4 drwxrwxr-x    2 media_rw media_rw      4096 Oct 12 06:01 Ringtones
     136520 -rw-rw-r--    1 media_rw media_rw 139791302 Oct 11 23:06 cm-10-20121011.zip
     85104 -rw-rw-r--    1 media_rw media_rw  87138923 Oct 11 23:02 gapps-jb.zip
        4 drwxrwxr-x    3 media_rw media_rw      4096 Oct 12 06:06 xiialive

    Espero les ayude a quienes tengan un problema similar y puedan controlar mejor sus dispositivos Android

    Don’t Worry……Be Linux!!!!!!!!

    Anuncios
  • Etiquetas: , , , , , , , , , , , ,

    6 responses to “Borrar carpetas con problemas de permisos en Android”

    1. alcas32 says :

      Excelente aporte mijo, gran forma d elibrarse del problema.

      @lex

    2. Bamban says :

      Hola tengo la memoria sdcardO esta se llena fasilmente como podria hacer qu ir esos archivos se descargen en la sd externa para no tener problemas de memoria!!!!

    3. Francisco says :

      Hola. Creo que es la solución. Pero no logro entender cómo llegaste a eso. Tampoco cómo logearme o conocer el id de quien no me permite modificar los permisos.
      Bueno. Te comentaré mi caso. Soy usuario root de un s4 con kikat 442. Utilizo el root explorer para mis ediciones en el teléfono. Pero en la tarjeta sdcard trato de cambiar los permisos de las carpetas y me dice que “el cambio no tuvo éxito. Algunas carpetas en sdcard no pueden cambiarse” Mi root explorer lo tengo en r/w.
      Busqué mucho y creo que tu solución es la que podría ayudarme.
      Por favor guiame paso por paso para tener acceso completo a los permisos. Gracias.

    4. José Miguel says :

      Ya ha pasado tiempo pero muy buen apunte, me paso lo mismo al crear unas carpetas con nautilus:
      Al leer tu articulo y ver que el problema era de permisos en el montaje opté por otra solución:
      Arrancar el dispositivo con TWRP (modo recovery) y con el file manager borralos.

      Un saludo.

    Responder

    Introduce tus datos o haz clic en un icono para iniciar sesión:

    Logo de WordPress.com

    Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

    Imagen de Twitter

    Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

    Foto de Facebook

    Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

    Google+ photo

    Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

    Conectando a %s

    A %d blogueros les gusta esto: