volver a montar un directorio sdcard obstinado de nuevo a lectura-escritura

Estoy desarrollando una aplicación para el mercado comercial que no estará disponible en Play y tengo un dispositivo de destino específico que fue creado a medida, pero no por mí. Ciertos recursos de SDK de terceros deben instalarse en el directorio de la tarjeta SD. Eso solo es simple de hacer.

El problema al que me enfrento es que, de alguna manera, el directorio sdcard se ha montado en modo de solo lectura. Tenga en cuenta que en realidad no hay una tarjeta SD, es una partición en el disco interno. En realidad, fue mount rw en el punto, algo cambió y ahora estoy atascado con el directorio sdcard de solo lectura.

Lo que he probado hasta ahora:

  1. Intenté volver a montar el punto de montaje de la tarjeta SD. No ha funcionado. Incluso si estoy conectado como root. No se proporcionan errores.

    montar -o volver a montar,rw /dev/block/mmcblk1p4 /mnt/sdcard

  2. Comprobado /proc/mounts. Puedo ver allí en /proc/mounts que sdcard se ha montado ro. Lo que no sé es si hay un equivalente de fstab en Android, así que cambio las opciones. Me dijeron que vold.fstab es donde debo ir para eso, pero...

    /dev/block/mmcblk1p4 /mnt/sdcard vfat ro,relatime,uid=1000,gid=1015,fmask=0202,dmask=0202,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0

  3. Comprobado vold.fstab. Ese no es el mismo dispositivo que se muestra en /proc/mount.

    dev_mount sdcard /mnt/sdcard 4 /devices/platform/mmci-omap-hs.1/mmc_host/mmc1 dev_mount usbdisk /mnt/sdcard/usbdisk auto /devices/platform/ehci-omap.0 dev_mount extsd /mnt/sdcard/extsd automático /dispositivos/plataforma/mmci-omap-hs.0/mmc_host/mmc0

  4. Se comprobó la salida de logcat desde el arranque. No hay nada que indique que hubo un error de montaje, pero ni siquiera estoy seguro de si mount/vold informaría a logcat. Sin embargo, hubo una serie de errores que indicaban que las aplicaciones de arranque no podían escribir en la tarjeta SD.

Estoy súper confundido en este punto. ¿Alguien sabe de una manera segura de arreglar esto?

EDIT:

He probado diferentes opciones de montaje esta vez

mount -w -o remount /dev/block/mmcblk1p4 /mnt/sdcard

Esto funciona por un tiempo, y puedo hacer algunas operaciones con archivos, pero finalmente vuelve a RO, casi en un par de minutos.

preguntado el 12 de junio de 12 a las 21:06

Si un sistema de archivos se convierte repentinamente en de solo lectura, generalmente es una respuesta de protección a la corrupción detectada. Probablemente debería hacer una copia de seguridad del contenido y volver a crear el sistema de archivos. También es posible que el 'dispositivo personalizado' tenga problemas de hardware. -

Bingo Cris. De hecho, hice esto ayer para resolver el problema, luego vi tu comentario hoy y tienes toda la razón. El comportamiento predeterminado, como mínimo con este dispositivo, era volver a montar el sistema de archivos como de solo lectura. Afortunadamente, el directorio sdcard no tiene nada valioso, así que simplemente recreé el fs y estaba listo. -

2 Respuestas

Logró resolver el problema. El sistema de archivos se había dañado, por lo que el sistema obligó a volver a montarlo en solo lectura. La solución simple fue recrear el sistema de archivos.

Respondido el 13 de junio de 12 a las 18:06

Es cierto que esto no estaba en Android, pero tuve que instalar ntfs-3g y configurar fstab así:

/dev/sda1 /media/mycard ntfs-3g  rw,umask=0000,defaults 0 0 

o montar con

mount -t cifs -o uid=1000 /dev/sda1 /media/mycard

Respondido el 13 de junio de 12 a las 15:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.