Ubuntu

空文件夾採用 inode

  • March 28, 2017

我正在執行 ubuntu 14.04.1

雖然我還有剩餘磁碟空間,但我確實有 100% 的 inode 使用率:

ubuntu@ipsec-2:~$ df -i
Filesystem     Inodes  IUsed  IFree IUse% Mounted on
/dev/xvda1     524288 520606   3682  100% /

該設備是/dev/xvda1 on / type ext4 (rw)

在使用 stat 時,我發現很多 inode 進入 /media:

ubuntu@ipsec-2:/$ stat -t -c "%n: %i" ./* | sort -k2 -n
{omit <100k inodes for clarity}
./initrd.img: 124172
./bin: 262145
./home: 262147
./lib64: 262148
./boot: 393217
./etc: 393218
./lib: 393219
./media: 393220

當進入 /media 時,它是空的:

ubuntu@ipsec-2:/$ cd /media
ubuntu@ipsec-2:/media$ ls -la
total 8
drwxr-xr-x  2 root root 4096 Apr 16  2014 .
drwxr-xr-x 22 root root 4096 Mar 28 09:25 ..

我已經嘗試重新啟動伺服器以查看這是否會釋放 inode,但無濟於事。

使用 lsof | grep media 也無法查看是否某個程序正在使用它們,即使它們已被刪除。

有沒有辦法刪除 inode,或者這是預期的行為?

如果您達到了文件系統 inode 限制,您需要顯示您的 inode 是如何使用的。您使用的命令將顯示每個文件或目錄的 inode 編號。這與使用的 inode 數量不同。

$ stat -t -c "%n: %i" ./*

如果要查看 inode 使用中最大的目錄,可以使用如下命令(輸出中顯示的最後一個目錄):

$ find / -xdev -printf '%h\n' | sort | uniq -c | sort -k 1 -n

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