(2 respuestas)
Cerrado hace 7 años.
Usé du para enumerar todas las carpetas y ordenarlas por tamaño, los resultados simplemente no suman cuánto espacio en disco se usa (usando df). Hay alrededor de 20G en discrepancia, ¿por qué?
[[email protected] lib]# du --max-depth=1 -h /| sort -n -r 310M /lib 123M /root 96K /dev 88M /etc 75G / 73G /var 30M /sbin 20M /boot 20K /tmp 18M /lib64 16K /mnt 16K /lost+found 12K /home 8.0K /srv 8.0K /selinux 8.0K /opt 8.0K /misc 8.0K /media 7.0M /bin 1.2G /usr 0 /sys 0 /proc [[email protected] lib]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 298G 94G 189G 34% / /dev/sda1 99M 26M 69M 28% /boot tmpfs 2.0G 0 2.0G 0% /dev/shm
Respuesta aceptada:
Eso es porque du
y df
medir diferentes cosas.
man du
dice:
du:estimación del uso del espacio de archivo (…) Resuma el uso de disco de cada ARCHIVO , recursivamente para directorios.
y man df
:
df:informe del uso del espacio en disco del sistema de archivos
Los sistemas de archivos tienen tablas de inodos, diarios, etc. que no están resumidos por du
. No es solo específico de Linux, sino más bien específico de UNIX (o incluso específico del sistema de archivos de UNIX). Debido a que los procesos de UNIX usan archivos para todo (estoy simplificando), es decir, escribir en archivos de registro, también podría haber un problema de descriptor de archivo abierto en este caso que cause diferentes du
y df
salidas.