used largest large files big bif linux filesystems filesize du

linux - largest - ¿Por qué la salida de `du` a menudo es tan diferente de` du-b`?



search large files in linux (4)

Compara (por ejemplo) du -bm con du -m .

Los conjuntos -b --apparent-size --block-size=1 , pero luego m reemplaza el tamaño de bloque para que sea 1M .

Similar para -bh contra -h : el -bh significa --apparent-size --block-size=1 --human-readable , y otra vez la h reemplaza ese tamaño de bloque.

¿Por qué la salida de du menudo es tan diferente de du -b ? -b es la abreviatura de --apparent-size --block-size=1 . solo usar --apparent-size me da el mismo resultado la mayor parte del tiempo, pero --block-size=1 parece hacer el truco. Me pregunto si la salida es correcta, ¿y cuáles son los números que quiero? (es decir, tamaño de archivo real, si se copia a otro dispositivo de almacenamiento)


Los archivos y carpetas tienen su tamaño real y el tamaño en el disco.

  • --aparco-tamaño es archivo o carpeta en tamaño real

  • tamaño en el disco es la cantidad de bytes que el archivo o carpeta toma en el disco. Lo mismo cuando se usa solo du

Si encuentra que el tamaño aparente es casi siempre varias magnitudes más altas que el uso del disco, entonces significa que tiene muchos archivos (''dispersos'') de archivos con fragmentación interna o bloques indirectos.


Porque, de forma predeterminada, du da el uso del disco, que es igual o mayor que el tamaño del archivo. Como se dice bajo --aparato tamaño

print apparent sizes, rather than disk usage; although the apparent size is usually smaller, it may be larger due to holes in (`sparse'') files, internal fragmentation, indirect blocks, and the like


El tamaño aparente es el número de bytes que sus aplicaciones creen que están en el archivo. Es la cantidad de datos que se transferirían a través de la red (sin contar los encabezados del protocolo) si decide enviar el archivo a través de FTP o HTTP. También es el resultado de cat theFile | wc -c cat theFile | wc -c , y la cantidad de espacio de direcciones que ocuparía el archivo si cargaba todo con mmap .

El uso del disco es la cantidad de espacio que no se puede usar para otra cosa porque su archivo está ocupando ese espacio.

En la mayoría de los casos, el tamaño aparente es más pequeño que el uso del disco porque el uso del disco cuenta el tamaño completo del último bloque (parcial) del archivo, y el tamaño aparente solo cuenta los datos que se encuentran en ese último bloque. Sin embargo, el tamaño aparente es mayor cuando tienes un archivo disperso (los archivos dispersos se crean cuando buscas en algún lugar más allá del final del archivo y luego escribes algo allí, el sistema operativo no se molesta en crear muchos bloques llenos de ceros) - solo crea un bloque para la parte del archivo que decidió escribir).