2 votos

¿Por qué las estadísticas indican que no hay espacio en / (Root) pero sí en /system?

En mi teléfono rooteado Android 4.4.2 Samsung Galaxy S4 con chipset armv7l, si inicio un shell, puedo usar el stat pero algunos dispositivos informan de forma extraña. En particular, el / dispositivo muestra un tamaño cero, cero bloques, ya que como /system informa de los números válidos:

root@jfltevzw:/ # stat /
stat /
  File: /
  Size: 0           Blocks: 0          IO Block: 4096   directory
Device: 1h/1d   Inode: 1           Links: 31
Access: (0755/drwxr-xr-x)  Uid: (    0/ UNKNOWN)   Gid: (    0/ UNKNOWN)
Access: 1970-01-01 00:00:00.000000000
Modify: 2015-04-25 00:48:54.000000000
Change: 2015-04-25 00:48:54.000000000

root@jfltevzw:/ # stat /system
stat /system
  File: /system
  Size: 4096        Blocks: 8          IO Block: 4096   directory
Device: b310h/45840d    Inode: 2           Links: 25
Access: (0755/drwxr-xr-x)  Uid: (    0/ UNKNOWN)   Gid: (    0/ UNKNOWN)
Access: 1970-01-01 00:00:00.000000000
Modify: 2015-01-10 01:52:27.000000000
Change: 2015-01-10 01:52:27.000000000

Mirando mis monturas, veo estas dos entradas:

/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 rw,seclabel,relatime,data=ordered 0 0
rootfs / rootfs rw,relatime 0 0

¿Por qué mi partición root se muestra a través de stat como si no tuviera espacio disponible y hay una forma de determinar de forma fiable cuánto espacio hay disponible desde un comando del shell o a través de un punto de entrada de C como statvfs() que también está reportando cero espacio disponible para mi aplicación.

1voto

moonbutt74 Puntos 153

stat reporta 0 espacio/bloques en / porque / = ramdisk que vive en ram, ram no es un dispositivo de bloques. Su ramdrive real vive en el almacenamiento con su kernel un dt.img en una partición emmc especificada etiquetada como boot .

La combinación del ramdisk, el binario del kernel y el dt.img (binario del árbol de dispositivos) se conocen colectivamente como su boot.img

La imagen de arranque también contiene algunos directorios reales que funcionan como marcadores de posición, normalmente son /data /dev /proc /system

También su ramdisk contiene la configuración necesaria *.rc y *.sh y los scripts de shell necesarios para arrancar su dispositivo y establecer/poner en marcha su sistema operativo. El ramdisk también contiene la configuración de la política de selinux de su dispositivo, sepolicy y archivos de contexto, por último, su ramdisk contiene el directorio /sbin, que es donde vive el demonio adb y normalmente los binarios charger, healthd y ueventd y cualquier binario específico del fabricante relacionado con los servicios, normalmente de seguridad. El ramdisk/ramdrive es temporal y se vacía de la memoria cuando se apaga o se reinicia, y se recarga en su lugar designado en la memoria cuando el dispositivo arranca de nuevo.

-1voto

abbaselmas Puntos 42

Piensa en ello como en Windows. En el mismo disco duro de 1TB. Usted puede C:\ ~ y D:\ ~ al mismo tiempo en la misma unidad. Usted no puede buscar el espacio libre de todos.

En Android hay particiones en mmc

/cache /datos /sistema etc.

cada uno de ellos tiene su propia información buscar para cada uno.

Adjuntaré algunas capturas de pantalla de mi N7000 de 16GB y sus particiones. Tal vez estas fotos le llevará a alguna parte.

(Haga clic en la imagen para ampliarla)

IMG: cat paritions IMG: cat mounts IMG: cat mountstats

0 votos

Esto no explica por qué stat informa que no hay espacio, sin embargo puedo escribir archivos en el fs Root, no está lleno, ni mucho menos.

0 votos

Sé que no he contestado a la pregunta de rootfs, pero la pregunta no es que la lea de nuevo... ¿hay alguna forma de determinar de forma fiable cuánto espacio hay disponible?

0 votos

¡Esto todavía necesita una edición!

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