Linux разный размер для df и du для корневого раздела
На моем сервере CentOS обе команды показывают разное использование для disk /, df показывает этот вывод:
Filesystem Size Used Avail Use% Mounted on
/dev/xvda2 16G 14G 952M 94% /
/dev/xvda6 996M 258M 687M 28% /tmp
/dev/xvda3 16G 6.5G 8.3G 45% /var
/dev/xvda1 251M 25M 213M 11% /boot
tmpfs 4.0G 0 4.0G 0% /dev/shm
и ду-шоу показывает
6.9M /bin/
15M /boot/
123M /etc
212K /home/
233M /lib
27M /lib64/
16K /lost+found/
8.0K /media/
8.0K /mnt/
399M /opt/
959M /root/
35M /sbin/
8.0K /srv/
0 /sys/
2.5G /usr/
4.2G total
Также попробовал с инструментом NCDU, который сообщает об использовании только 5.6 ГБ.
Как найти спрятанное место на диске?
3 ответа
Посмотрите, есть ли у вас удаленные файлы, которые все еще используются
lsof | grep deleted
Существует длинное объяснение, которое можно найти в любом количестве блогов онлайн с помощью быстрого поиска, но основная суть заключается в следующем:
Если я создаю 1 ГБ разреженный файл, du
покажет 1 гб, но df
покажет нулевое использование. Если у меня есть файл размером 1 ГБ, открытый в какой-то программе и удаляю его, df
будет по-прежнему показывать 1 ГБ использования, пока все ссылки на индекс не будут закрыты, но du
никогда не найдет файл для его отображения.
Df - это использование файловой системы, которое включает в себя файлы и другие структуры, которые поддерживают файлы, такие как журнал и т. д. du показывает только сумму размера файла, которая в основном будет меньше. разница будет зависеть от того, как долго использовалась файловая система, какова сама файловая система и т. д.