最近、奇妙な問題が発生しています。このマシンをWebサーバーとして使用しています。ディレクトリにファイルを書き込もうとすると、スペースがなくなったと表示されます。私はいくつかのファイルを削除し、それは少しの間働いた。数分後、再び問題が発生します。
root@web1:/home# mkdir test
mkdir: cannot create directory ‘test’: No space left on device
root@web1:/home# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/web1-root 43G 4.5G 37G 11% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 3.9G 4.0K 3.9G 1% /dev
tmpfs 798M 828K 798M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 3.9G 0 3.9G 0% /run/shm
none 100M 0 100M 0% /run/user
/dev/sda1 228M 91M 126M 42% /boot
/dev/sdb1 197G 75G 113G 40% /home
df -i
は、使用率が100%のパーティションを報告します。
root@web1:/home# df -i | grep 100%
/dev/sdb1 13107200 13107200 0 100% /home
出力は、iノードの使用率が高いことを示しています。これは、これが最良の回答スレッドのようです。非常に広範囲です。
https://unix.stackexchange.com/questions/117093/find-where-inodes-are-being-used
@Rinzwindや@heemayl suugestedのように、Googleで検索しているiノードを使い果たしてしまいました... http://www.ivankuznetsov.com/2010/02/no-space-left-on-device- running-out-of-inodes.html
これが解決策です
利用可能なiノードを確認する
$ df -i
どのディレクトリがより多くのiノードを持っているかを見つける
$ for i in /*; do echo $i; find $i |wc -l; done
問題が見つかるまで再帰的に検索を繰り返します
$ for i in /DIRWITHHIGHINODES/*; do echo $i; find $i |wc -l; done
容疑者が見つかったら、ファイルを削除するだけです
$ Sudo rm -rf /home/bad_user/directory_with_lots_of_empty_files
できました。 df -iコマンドで結果を再度確認します。次のようなものが表示されるはずです。