
Hoje, fiquei sem inodes em um dos meus VPSs.
Excluí vários arquivos pequenos supérfluos, liberando inodes suficientes para tornar o sistema operacional novamente:
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/simfs 586K 529K 58K 91% /
Também criei um pequeno comando para me fornecer o número de inodes usados (essencialmente listando todos os arquivos com seus números de inode, filtrando duplicatas e contando as linhas do resultado):
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
Portanto, parece que os arquivos /
representam apenas 275 mil inodes, mas df
relatam 529 mil usados.
Como pode ser?
(Eu até reiniciei o sistema para liberar todos os inodes que ainda estavam bloqueados pelos processos, mas isso não alterou em nada a quantidade de inodes usados.)
Responder1
Use uma montagem de ligação em vez de -xdev
. Além disso, os diretórios também usam inodes.
mkdir /mnt/somewhere
mount -o bind / /mnt/somewhere
find /mnt/somewhere -printf '%i\n' | sort -u | wc -l