Paradoja de Compresión ZFS: Bloques Lógicos vs. Bloques Físicos

2025-04-17

Un archivo cero de 256 KB creado con `dd` en un sistema de archivos ZFS con compresión habilitada muestra un comportamiento desconcertante: `ls -l` muestra su tamaño como 256 KB, pero `ls -s` y `ls -slh` muestran un tamaño mucho menor, casi cero. Esto se debe a la eficiente compresión de ZFS, resultando en un número mínimo de bloques físicos. El artículo explora tres maneras de medir el tamaño del archivo: tamaño lógico (en bytes), conteo de bloques físicos y conteo de bloques lógicos. Señala que el campo `st_blocks` de POSIX no especifica qué tamaño reportar, lo que lleva a posibles cambios en el valor de `st_blocks` al mover archivos entre sistemas de archivos, e incluso a una posible expansión del tamaño del archivo que excede la capacidad del nuevo sistema de archivos.

Desarrollo