Sim, você pode consumir todos os inodes de um sistema. Eles são um recurso limitado, assim como o espaço em disco, e são pré-alocados quando você executa um mkfs.ext4
, por exemplo.
Você pode usar ferramentas como tune2fs -l <device>
ou df -i <path>
para ver quantas são alocadas e usadas.
Exemplo
$ df -i /
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora-root 3276800 355850 2920950 11% /
Portanto, este sistema de arquivos tem 2920950 inodes livres. Se eu começasse a criar arquivos, diretórios ou links no sistema de arquivos, isso seria tudo o que eu precisava fazer para consumir todos eles. Percebi que eu poderia consumir todos esses inodes com pequenos arquivos ou links, e ainda ter praticamente todo o espaço em disco ainda disponível para mim.
Consumindo inodes sem arquivos?
Não tenho certeza do que você está obtendo aqui, mas a única maneira que conheço, onde você pode consumir inodes é criar arquivos, diretórios ou links. Eu não estou familiarizado com nenhuma outra maneira de consumi-los.
Exemplo
Aqui você pode ver que estou consumindo 1 inodes ao criar um diretório vazio.
$ df -i /
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora-root 3276800 355850 2920950 11% /
$ sudo mkdir /somedir
$ df -i /
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora-root 3276800 355851 2920949 11% /
A maneira mais fácil de consumir os inodes provavelmente criará uma árvore de diretórios de diretórios.
$ sudo mkdir /somedir/1
$ df -i /
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora-root 3276800 355852 2920948 11% /
$ sudo mkdir /somedir/2
$ df -i /
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora-root 3276800 355853 2920947 11% /
$ sudo mkdir /somedir/3
$ df -i /
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora-root 3276800 355854 2920946 11% /
Aqui está outro exemplo em que estou consumindo inodes criando vários links usando ln
para o mesmo arquivo.
$ ln -s afile ln1
$ df -i .
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora_greeneggs-home 26722304 1153662 25568642 5% /home
$ ln -s afile ln2
$ df -i .
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora_greeneggs-home 26722304 1153663 25568641 5% /home
$ ln -s afile ln3
$ df -i .
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/fedora_greeneggs-home 26722304 1153664 25568640 5% /home