Ubuntu

Ubuntu伺服器:硬碟總是滿的

  • January 27, 2016

我有一個 50GB 的 vps

當我執行 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    .

我還嘗試找出大於 100MB 的文件,以嘗試使用 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 –inode /

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)

發行商 ID:Ubuntu 描述:Ubuntu 10.04.4 LTS 版本:10.04 代號:lucid

du 和 df 之間通常存在一些差異,但通常不會像您看到的那麼大。

  • du 報告通過從目錄樹中讀取資訊所使用的磁碟空間,它準確但速度慢。
  • df 報告通過讀取文件系統元數據使用的磁碟空間,它快速但不太準確,因為它與塊一起使用。

您所看到的通常原因是文件已被刪除但尚未被寫入它的程序關閉。

由於文件已被刪除,du 將看不到它的目錄條目,因此無法將其包含在它的報告中。

由於文件仍處於打開狀態,它使用的塊不是免費的,因此 df 將報告它們正在使用中。

您應該能夠找到導致問題的文件

lsof +L1

檢查SIZE/OFF列。

+L1 形式的規範將選擇已取消連結的打開文件。+L1 形式的規範將選擇指定文件系統上未連結的打開文件。

引用自:https://serverfault.com/questions/490704