


df показывает использование файловой системы, а du обходит указанные файлы и каталоги и оценивает занимаемое ими место. Поэтому сумма каталогов и занятое место по df не обязаны совпадать. Начните с одинаковой области измерения и единиц, затем проверяйте причины расхождения.
Команды ниже относятся к GNU coreutils в Linux и только читают состояние. Запускайте их в нужном каталоге, понимая, что рекурсивный обход большого дерева может создать заметную нагрузку на диски.
df -h -- .
du -x -h --max-depth=1 -- .
Точка обозначает текущий каталог. df покажет файловую систему, которая его содержит. du посчитает доступное дерево этого каталога; -x не даст перейти в другие файловые системы, а --max-depth=1 ограничит глубину выводимых строк. Сам обход вложенных данных всё равно нужен для подсчёта итогов.
Если вы стоите в небольшой подпапке, сравнивать её итог с занятостью всего раздела неправильно. Сначала определите точку монтирования по выводу df. Не складывайте итоговую строку du с уже включёнными в неё подкаталогами: это двойной счёт.
Размер данных файла и место, выделенное файловой системой, могут отличаться. У разреженного файла логический размер может быть большим, хотя часть диапазона не занимает обычных блоков данных. Для одного дерева можно отдельно запросить два показателя в одинаковых единицах:
du -x -s -B1 -- .
du -x -s --apparent-size -B1 -- .
Первая команда оценивает выделенное место, вторая считает apparent size. Ключ -B1 выводит значения в единицах одного байта. Это не означает, что файловая система выделяет место побайтно. Округление, устройство хранения и особенности файловой системы тоже имеют значение.
Эти причины являются направлениями проверки, а не диагнозом по одному несовпавшему числу. Не удаляйте дополнительные файлы и не завершайте процессы только ради сближения показателей.
Если создание файлов завершается ошибкой при видимом свободном объёме, проверьте df -i -- .. На файловых системах с ограниченным числом inode множество мелких файлов может исчерпать их раньше пространства данных. Сохраняйте точную ошибку, файловую систему, время измерения и выполненную команду.
Разобраться с командами и устройством системы можно на курсах Linux. На Mentoring.digital можно выбрать наставника по Linux, чтобы научиться интерпретировать вывод на учебном окружении до действий на рабочем сервере.