¿Cómo saco cuánto tamaño nominal del archivo está realmente lleno de datos? Como vmtouch
muestra la cantidad de archivo que hay actualmente en la memoria ...
Espero que el flujo de trabajo sea así:
$ fallocate -l 1000000 data
$ measure_sparseness data
100%
$ fallocate -p -o 250000 -l 500000 data
$ measure_sparseness
50%
Solución: el uso du -bsh
y el du -sh
y los comparan.
filefrag data
-> múltiple FIBMAP: Invalid argument
-> data: 1 extent found
...
filefrag -e
funciona perfectamente en XFS y ext4 al menos. No he probado en otros. Utiliza FIEMAP (extensión-mapa), con un respaldo a FIBMAP. Si esos ioctl
s no funcionan, entonces no será útil.
filefrag
no tiene -e
opción.
e2fsprogs
? Estoy bastante seguro de que no es una característica reciente. También hay una -v
opción que imprime la misma información detallada (más algunas líneas de encabezado adicionales). Quizás tu filefrag
tengas eso. Sin xfs_bmap
embargo, a diferencia de esto, no indica explícitamente agujeros con líneas separadas, solo tiene discontinuidades en la posición del archivo. De todos modos, no me sorprende que tmpfs
no sea compatible con FIEMAP, porque no hay un dispositivo de bloque como almacén de respaldo, por lo que no hay un valor razonable para la ubicación de las extensiones.
filefrag
para cualquier sistema de archivos yxfs_bmap -vpl
para XFS son herramientas clave para mostrar dónde están los datos (y dónde están las extensiones no escritas preasignadas) cuando se juega con archivos dispersos y perforaciones.