O que significa se o uso do inode for alto?

6

Depois de algumas pesquisas no Google, descobri que o uso do inode provavelmente está relacionado ao número de diretórios / arquivos.

  • Acredito que exista um limite (assim, o que determina o uso do inode%). o que Esse limite é determinado por?
  • Se O uso do Inode atinge 100% o que acontece?
por Joshua Enfield 28.09.2010 / 21:34

4 respostas

7

O sistema de arquivos usa inodes para rastrear locais de arquivos no disco. Se você não tiver mais inodes, não poderá gravar mais arquivos no sistema de arquivos até que haja mais disponíveis. É melhor planejar o que vai viver no sistema de arquivos antes de formatá-lo, pois com muitos sistemas de arquivos, você pode escolher o tamanho padrão do inode apropriado para o tamanho do arquivo que vai viver lá (tamanho de inode maior para arquivos maiores, para arquivos menores) e, assim, maximizar o número de arquivos para o espaço do sistema de arquivos.

    
por 28.09.2010 / 21:40
10

Algumas das respostas anteriores fornecem ideias gerais sobre o que está acontecendo, mas vamos descobrir como fazer algo a respeito. Eu sei que você vai pensar como esse pedante, mas vamos começar com o tipo do seu sistema de arquivos e discutir cada um deles como vimos no Linux. O fato de sua pergunta estar marcada com o Linux é importante porque outros sistemas de arquivos * nix suportam muitos outros tipos. Não sou especialista nesses sistemas de arquivos individuais, mas posso entender rapidamente artigos detalhados o suficiente para atingir as partes importantes.

ext2 / ext3 / ext4

Oliver Diedrich escreveu um artigo intitulado " Ajustando o sistema de arquivos Linux " que faz alguns pontos muito importantes. Primeiro, esses sistemas de arquivos colocam os inodes em uma área reservada do disco que permite que eles sejam armazenados em cache e acessados rapidamente. O tamanho deste espaço é fixo no momento em que o sistema de arquivos é criado. Isso significa que, para aumentá-lo, você terá que a) espelhar os arquivos em outro sistema de arquivos de tamanho adequado e ter um período de comutação ou b) fazer backup do sistema de arquivos, recriá-lo corretamente e restaurar os arquivos.

Para descobrir como você está se comportando em um determinado sistema de arquivos, digamos / dev / sda1, use o comando debuge2fs -h e procure por estas linhas sobre inodes. Meu sistema de arquivos tem cerca de 2,4% dos meus inodes em uso em um sistema de arquivos de 226GB com 100Gb em uso (disco raiz do Ubuntu).

   Inode count:              15032320
   Block count:              60113214
   Reserved block count:     3005660
   Free blocks:              32794380
   Free inodes:              14658480

Outros disseram que quando os inodes se foram, eles se foram. E eles não estão brincando. Eu encontrei uma ferramenta chamada ext2resize que acabaria por oferecer esse recurso, mas o autor parece ter conseguido um trabalho do dia interessante que leva muito do seu tempo. Consulte as Perguntas frequentes . Não prenda a respiração por ext2 / 3/4 para suportar esse tipo de crescimento, já que a maioria dos membros do kernel e da comunidade de sistemas de arquivos acreditam que o trabalho realmente interessante está nos sistemas de arquivos de disco em estado sólido e em sistemas de arquivos em cluster. O material ext2 / 3/4 é antigo, mesmo que ext4 seja razoavelmente novo.

Outra observação interessante é que você pode tentar otimizar diretórios contendo muitos arquivos. Dado que você acha que vai ficar sem inodes, você provavelmente tem algumas listas de diretórios muito longas. tune2fs -O dir_index /dev/sda1 ativa a indexação b-tree em vez do modelo padrão de lista vinculada. Veja a man page de tune2fs ou O post de Steve no debian-administration.org .

Se você quiser refazer o sistema de arquivos com mais inodes, você terá que usar a opção mke2fs -N ___ para mke2fs (veja a página man e use debuge2fs para o número computado padrão. Opcionalmente, você pode alterar o relação inode-para-blocos quando você faz o sistema de arquivos com a opção mke2fs -i ___ para mke2fs.Meu Ubuntu 10,04 distribuição vem com uma taxa padrão de 16384 ou, se eu ler isso corretamente, um, inodes de 256 bytes para cada 16384 blocos de dados (a 4KB cada) Sistemas de arquivos para leitores de notícias obtêm uma razão padrão de 4096 para 1, que é quatro vezes mais inodes.

Outros sistemas de arquivos

Os últimos três anos viram uma explosão de popularidade nos sistemas de arquivos. Muitos estão disponíveis no Linux, embora o popular ZFS esteja disponível apenas no Solaris e no FreeBSD da Sun. No Linux, você pode considerar explorar a Btrfs , o ReiserFS 3, < a href="http://oss.sgi.com/projects/xfs/" title="Página XFS da SGI"> XFS ou JFS . Existem também sistemas de arquivos comerciais que levam sua disponibilidade e escalabilidade para o coração, mas existem muitos, você terá que olhe aqui na Wikipedia.

Conclusões

Torne sua faixa do inode grande o suficiente no dia 1 para manipular sua contagem de arquivos ou mover para um sistema de arquivos que possa manipular a carga.

    
por 30.09.2010 / 04:41
2

O alto uso de inodes normalmente indica muitos arquivos pequenos (ou talvez corrupção do sistema de arquivos).

se você ficar sem inodes, não poderá criar arquivos adicionais e, assim, o disco estará 'cheio', independentemente de sua capacidade real disponível em MB / GB / TB

    
por 28.09.2010 / 21:39
0

às vezes, o sysadmin pode definir o limite para os números de arquivos, então você não pode ter um grande número de arquivos pequenos nesse tipo de sistema de arquivos:)

    
por 17.08.2012 / 08:05