今日のVPSの1つにinodeが足りませんでした。
いくつかの重複した小さなファイルを削除して、システムを再実行するのに十分なinodeを取得しました。
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/simfs 586K 529K 58K 91% /
また、使用されたinodeの数を提供する簡単なコマンドを作成しました(デフォルトでは、すべてのファイルとそのinode番号を一覧表示し、重複項目をフィルタリングし、結果の行数を計算します)。
sudo find / -xdev -type f -printf '%i~%P\n' > files.txt
<files.txt | sort -u -t'~' -k1,1 > inodes.txt
wc -l files.txt inodes.txt
1513608 files.txt
275320 inodes.txt
/
したがって、ファイルは275,000個のinodeだけを占めるように見えますが、df
529,000個が使用されていると報告します。
どうすればいいですか?
(プロセスによってまだロックされているinodeを解放するためにシステムを再起動しましたが、使用されたinodeの数はまったく変わりませんでした。)
答え1
代わりにバインドマウントを使用してください-xdev
。また、ディレクトリもinodeを使用します。
mkdir /mnt/somewhere
mount -o bind / /mnt/somewhere
find /mnt/somewhere -printf '%i\n' | sort -u | wc -l