O que determina o número de inodes disponíveis em um disco?

4

É baseado em um número determinado ao formatar um disco rígido?

Por exemplo:

$ df -Ti /
Filesystem     Type Inodes IUsed  IFree IUse% Mounted on
/dev/dm-0      ext4 983040 95683 887357   10% /

De onde vem esse 983040? Podemos aumentar / diminuir isso? Dentro de que limites?

    
por neverendingqs 16.08.2016 / 21:25

2 respostas

3

Não é uma medida por disco, é uma medida por sistema de arquivos. Para muitos sistemas de arquivos, sim, é determinado no momento do formato. Para alguns sistemas de arquivos, é dinâmico com base no uso do sistema de arquivos, no tamanho médio do arquivo e em outros bits de informação.

    
por 16.08.2016 / 21:27
3

Se você está falando sobre sistemas de arquivos ext4, é baseado no tamanho do sistema de arquivos. O padrão é 1 inode por 16.384 bytes. Mais informações em Archwiki - ext4 - bytes por razão de inode

Observe que essa proporção pode ser revisada no momento da criação do sistema de arquivos, consulte man de página para mkfs.ext4

Para resolver as edições subsequentes da pergunta, onde você adicionou algumas perguntas:

Where does that 983040 come from?

Ele vem do tamanho do sistema de arquivos. 1 inode por 16.384 bytes de sistema de arquivos, por padrão.

Can we increase/decrease it?

Sim, mas não é fácil. Faça backup do sistema de arquivos, recrie o sistema de arquivos usando o argumento "-i bytes por inode" na página man. Restaure o conteúdo do sistema de arquivos.

Within what limits?

Como mostrado na man page, bytes-por-inode não deve ser definido para menos que o tamanho do bloco, caso contrário você provavelmente terá mais inodes do que poderia ser usado. Como Stéphane Chazelas aponta, arquivos vazios, dispositivos, fifos, sockets, symlinks curtos consomem um inode, mas não consomem um bloco.

Você realmente precisa criar mais de 887.357 arquivos adicionais no sistema de arquivos raiz?

    
por 16.08.2016 / 21:30

Tags