Я пытаюсь оценить, где распределено мое дисковое пространство на моем Unix-сервере. Чтобы увидеть текущее состояние дискового пространства я бегу:
df -h
Но при попытке оценить, что занимает место на диске и работает с /
du -skh * | sort -n
Общее используемое пространство составляет 956 ГБ, но общее занимаемое пространство, которое я вижу в подразделении, составляет менее 730 ГБ. Числа просто не складываются. Как это может быть? Где остальные ~ 200гб ??
Примечание. Большая часть используемого дискового пространства используется MySQL. Один огромный стол InnoDB и несколько маленьких.
/tmp
? Вы все еще видите это после перезагрузки?du
оценки, добавить ,-x
чтобы предотвратить пересечение нескольких файловых систем:du -sxh /
.du
иdf
использовать разные способы расчета размеров: linuxshellaccount.blogspot.com/2008/12/… . Большой размер блока или большое количество небольших / недавно удаленных файлов может быть причиной несоответствия.du -sxh /
показывает 690 ГБ. Имеет ли смысл этот 226GB из-за разных способов? Когда мне не хватит места на диске, когда du или df так скажут?du
должно быть более точным.Ответы:
df
собирается спросить суперблок о том, сколько места выделено, в то времяdu
как рассчитает размер всех видимых файлов. Эти две разные метрики приведутdf -h
иdu -sxh /
не согласятся друг с другом.Если вы беспокоитесь о свободном месте,
du
следует быть более точным (при условии, что у вас не будет исчерпано доступных блоков в файловой системе).Дальнейшее объяснение: http://linuxshellaccount.blogspot.com/2008/12/why-du-and-df-display-different-values.html
источник
df
претензии? Как суперблок узнаетhow much space is allocated
? Также - имеет ли значение тот факт, что большая часть используемого дискового пространства используется таблицей MySQL InnoDB? (в основном один большой стол и несколько небольших)df
также собирается исключить пространство, зарезервированное для root, когда сообщает о доступном пространстве. Если MySQL использует много маленьких файлов, это искажаетdf
противdu
(/var/log
как правило, виновник для многих крошечных файлов).Вы запускаете
du
команду какroot
? Если нет, вы не сможете войти в каталоги, например,/root
из-за проблем с разрешениями. Таким образом, вы не сложите размер файлов в этих каталогах. Это может объяснить, почему это число меньше. Кроме того, я считаю, чтоdf
команда покажет общий размер файловой системы (например, размеры inode + размеры файлов), тогда какdu
будет показана только размер файлов. Это сделало быdf
иметь большее количество.источник