¿Problema de almacenamiento?

Estoy teniendo un problema extraño. Estoy usando un Sony Xperia Z1s con piruleta. Me di cuenta hace unos días que Spotify me estaba enviando una notificación que dice "No se encontró ningún área de almacenamiento. Verifique la configuración de almacenamiento del dispositivo". Este tipo de error evita que Spotify se use en absoluto. Borré el caché, los datos e incluso desinstalé spotify. No pensé en nada de eso, hasta que también noté que no puedo tomar fotos. Técnicamente, puedo tomar fotos, pero no se guardan. Y sí, todavía tengo mucho espacio en mi tarjeta SD y espacio interno.

espacio en la tarjeta SD espacio interno notificación de espotify
Las capturas de pantalla son de la notificación de Spotify y el espacio de almacenamiento en mi teléfono (haga clic en las imágenes para ver variantes más grandes)

Corrí mounten Terminal Emulator para Android y obtuve esto:

u0_a307@C6916:/ $ mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /tmp tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,discard,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,relatime,discard,noauto_da_alloc,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,relatime,discard,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/apps_log /mnt/idd ext4 rw,seclabel,nosuid,nodev,noexec,noatime,discard,nobarrier,data=ordered 0 0
tmpfs /storage/remote tmpfs rw,seclabel,relatime,size=1024k,nr_inodes=256,mode=750,gid=1028 0 0
/dev/block/platform/msm_sdcc.1/by-name/LTALabel /lta-label ext4 ro,context=u:object_r:lta_label:s0,nosuid,nodev,noexec,noatime,data=ordered 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other,allow_utime_grp 0 0
tmpfs /storage/emulated tmpfs rw,seclabel,nosuid,nodev,relatime,mode=751,gid=1028 0 0
/dev/block/vold/179:65 /mnt/media_rw/sdcard1 vfat ro,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block/vold/179:65 /mnt/secure/asec vfat ro,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/fuse /storage/sdcard1 fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other,allow_utime_grp 0 0
/dev/fuse /storage/emulated/0 fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other,allow_utime_grp 0 0
/dev/fuse /storage/emulated/legacy fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other,allow_utime_grp 0 0
u0_a307@C6916:/ $
No podía saber eso, pero las capturas de pantalla parecen lo suficientemente claras. El tercero irrita con esa advertencia de hecho. ¿El ícono junto a "No se encontró ningún área de almacenamiento" pertenece a Spotify? Como no uso esa aplicación: ¿puedes configurar un "área de almacenamiento" allí? Pero eso no explicaría por qué no puedes tomar fotografías. ¿Qué mensajes de error recibes si intentas eso? ¿O si intenta escribir un archivo con cualquier otra aplicación?
No necesitaba configurar una partición dentro de la aplicación, ni nada por el estilo. Ayer, cuando tomé una foto, tardó 2 minutos en cargar y luego apareció una ventana emergente que no se podía guardar. Ahora, no pasa nada aparte del efecto del obturador. La parte extraña es que me permitirá tomar capturas de pantalla.
Bien, eso descarta un almacenamiento de solo lectura que pensé que podría ser la causa. ¿Aún puedes instalar aplicaciones desde Playstore? Pruebe, por ejemplo , Terminal Emulator . Inícielo, escriba mounty presione enter. Agregue la salida a su publicación. Eso nos mostrará cómo su almacenamiento está conectado al sistema, y ​​si tal vez las partes son de solo lectura, no debería ser así.
Parece que todo lo que necesitaba mi teléfono era un reinicio. Hice exactamente eso, y el problema parece estar solucionado. Lo cual es extraño, considerando que reinicié mi teléfono antes y el problema no se solucionó.
Explicación en mi respuesta a continuación. ¡Me alegro de que te haya resuelto tan fácil como eso!

Respuestas (1)

Como supuse (y se comprobó con el resultado del mountcomando), partes del sistema de archivos se montaron en modo de solo lectura, específicamente las tarjetas SD internas y externas. Eche un vistazo a las líneas con vold/179:65entradas ("vold" se usa solo para las tarjetas SD), estoy eligiendo una, por ejemplo:

/dev/block/vold/179:65 /mnt/media_rw/sdcard1 vfat ro,[…],errors=remount-ro[…]

La sintaxis aquí (simplificada) es: <device> <mount-point> <file-system> <options>. Entonces vemos que tenemos un "dispositivo de bloque vold" (una tarjeta SD) montado como sdcard1(el externo; el interno generalmente lo es sdcard0) usando VFAT como sistema de archivos. Ahora vienen las opciones, y la primera que vemos es rola que significa "solo lectura". Lo mismo se aplica a la tarjeta interna. Al ser de solo lectura, no se puede escribir nada aquí, de ahí sus problemas.

¿Cómo puede suceder eso? puede preguntar, así que déjeme señalar la opción al final: errors=remount-ro. Inicialmente, ambas tarjetas estaban montadas en modo de lectura y escritura. Algo causó problemas y el sistema tenía "demasiados errores" al leer/escribir en las tarjetas, por lo que se activó esta condición: para proteger las tarjetas contra daños, Android las volvió a montar como de solo lectura. Lo que también explica por qué un reinicio resolvió el problema: en el momento del inicio, después de una verificación de los sistemas de archivos, se vuelven a montar en lectura y escritura, hasta que algunos problemas/errores activan el montaje de solo lectura nuevamente.

Entonces, ¿qué debería hacer? Por ahora, el reinicio parece haber resuelto el problema. Si no vuelve a aparecer, diría que no hay nada más aquí por lo que debas preocuparte. Lo mismo si aparece una o dos veces al año: apague el dispositivo, déjelo apagado durante unos minutos para estar seguro ("enfriar" el sistema :), vuelva a encenderlo, relájese. Pero si sucede con frecuencia, puede haber algunos problemas con el controlador 1 , algo que no puede solucionar usted mismo. Entonces me pondré en contacto con el servicio con una descripción detallada (por ejemplo, incluya un enlace a su pregunta aquí).


1: ¿ Por qué sospecho que hay un problema con el controlador y no con la tarjeta? Porque en mi humilde opinión, es bastante poco probable que dos almacenamientos independientes tengan el mismo problema al mismo tiempo. Como se señaló, ambas tarjetas SD se volvieron a montar repentinamente como de solo lectura: una es la tarjeta externa física en la ranura y la otra se encuentra en el almacenamiento incorporado. OTOH, también podría ser un error en vold, ya que solo las tarjetas SD se ven afectadas, y el mismo controlador que se ocupa de la tarjeta SD interna también debe lidiar con las otras partes de su almacenamiento interno, que no se vio afectado. Pero, de nuevo, eso no es nada que puedas resolver; el fabricante debe proporcionar una corrección de errores (actualización del sistema) entonces.

Y PD: no deje que la línea /dev/fuse /storage/sdcard1 fuse rw,[…]lo confunda, lo que sugiere que la "partición ubicada en /storage/sdcard1" está montada en lectura y escritura. Esa es solo la "superposición FUSE" en la parte superior . Entonces, este sistema de archivos se declara de lectura y escritura, pero el subyacente aún es de solo lectura. Lo que significaría que el "sistema de archivos FUSE en la parte superior" aceptaría comandos de escritura, pero no podría asignarlos a la tarjeta, ya que el sistema subyacente es de solo lectura.