Назад | Перейти на главную страницу

Сервер Ubuntu: жесткий диск всегда заполнен

У меня vps 50 ГБ

когда я запускаю df, я получаю

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1             49982172  46580100    863064  99% /
none                    507212       172    507040   1% /dev
none                    511676         4    511672   1% /dev/shm
none                    511676        76    511600   1% /var/run
none                    511676         0    511676   0% /var/lock
none                    511676         0    511676   0% /lib/init/rw

Когда я бегу du -h от / я получаю

...
20K     ./tmp/vmware-root
4.0K    ./tmp/.webmin
4.0K    ./tmp/.X11-unix
4.0K    ./tmp/.ICE-unix
4.0K    ./tmp/hsperfdata_root
48K     ./tmp
7.7M    ./bin
3.8G    .

Я также пытался узнать о файлах размером более 100 МБ, чтобы попытаться найти, что занимает мое место, с помощью find / -size + 100M -ls

4026531985    0 -r--------   1 root     root     140737486266368 Mar 23 08:55 /proc/kcore
find: `/proc/3969/task/3969/fd/5': No such file or directory
find: `/proc/3969/task/3969/fdinfo/5': No such file or directory
find: `/proc/3969/fd/5': No such file or directory
find: `/proc/3969/fdinfo/5': No such file or directory

Я понятия не имею, что еще я могу сделать, чтобы найти свою проблему.

Редактировать:

Больше информации

df --inodes /

Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda1            3178496  178211 3000285    6% /

найти / -xdev -print | wc -l

178773

lsof + L1

COMMAND     PID  USER   FD   TYPE DEVICE SIZE/OFF NLINK    NODE NAME
miniserv.  1496  root  txt    REG    8,1    10416     0 2364381 /usr/bin/perl (deleted)
mysqld    12869 mysql    4u   REG    8,1        0     0  537495 /tmp/ibkCwnHJ (deleted)
mysqld    12869 mysql    5u   REG    8,1        0     0  537497 /tmp/ibFyPrrv (deleted)
mysqld    12869 mysql    6u   REG    8,1        0     0  537499 /tmp/ibdUnwbh (deleted)
mysqld    12869 mysql    7u   REG    8,1        0     0  537500 /tmp/iblHYOV2 (deleted)
mysqld    12869 mysql   11u   REG    8,1        0     0  537501 /tmp/ibUW9YGO (deleted)

Идентификатор распространителя: Ubuntu Описание: Ubuntu 10.04.4 LTS Release: 10.04 Кодовое имя: lucid

Обычно существует некоторое расхождение между du и df, но обычно оно не такое большое, как вы видите.

  • du сообщает о дисковом пространстве, используемом для чтения информации из дерева каталогов, это точно, но медленно.
  • df сообщает о дисковом пространстве, которое используется для чтения метаданных файловой системы, это быстро, но менее точно, поскольку работает с блоками.

Обычно причиной того, что вы видите, является файл, который был удален, но еще не был закрыт процессом, который в него записывает.

Поскольку файл был удален, du не увидит для него записи в каталоге и, следовательно, не сможет включить его в свой отчет.

Поскольку файл все еще открыт, используемые им блоки не являются бесплатными, поэтому df сообщит, что они используются.

У вас должна быть возможность отследить файл, вызывающий проблему с

lsof +L1

Проверить SIZE/OFF столбец.

Спецификация формы + L1 выберет открытые файлы, которые не были связаны. Спецификация формы + L1 выберет несвязанные открытые файлы в указанной файловой системе.