O que são inodes no Linux e como eles são usados?

Tudo no Linux é considerado um arquivo para manter a consistência. Isso inclui dispositivos de hardware, impressoras, diretórios e processos. Arquivos regulares, como música, texto, vídeos e outros arquivos multimídia, também possuem dados adicionais associados a eles chamados metadados.

O que são Inodes no Linux ? As entradas de inode são a base do sistema de (Inode)arquivos do Linux(Linux file system) . Eles gerenciam os metadados sobre um arquivo e são peças essenciais do funcionamento interno do Linux

Qual é a estrutura de um sistema de arquivos?(What Is The Structure Of a File System?)

Um sistema de arquivos é dividido em duas partes – blocos de dados e inodes. O número de blocos é fixo uma vez criado e não pode ser alterado.

O nome, caminho, localização, links e outros atributos de arquivo não estão localizados no diretório. Os diretórios são simplesmente tabelas que contêm os nomes dos arquivos com o número do inode correspondente.

Você pode criar um link físico resultando em mais de um nome para o mesmo arquivo. Quando você cria um link físico, ele também cria um novo nome na tabela com o inode, mas não move o arquivo.

Se você mover um arquivo grande, levará muito tempo. É mais eficiente criar a entrada de nome em um novo diretório e excluir a entrada antiga. Você também pode renomear arquivos da mesma maneira.

A parte superior da hierarquia é o próprio sistema de arquivos. Dentro do sistema de arquivos estão os nomes dos arquivos. Os nomes dos arquivos são vinculados aos inodes. Os inodes são vinculados aos dados físicos.

O que são inodes no Linux?(What Are Inodes In Linux?)

Um inode é uma estrutura de dados. Ele define um arquivo ou diretório no sistema de arquivos e é armazenado na entrada do diretório. Os inodes apontam para blocos que compõem um arquivo. O inode contém todos os dados administrativos necessários para ler um arquivo. Os metadados de (metadata)cada(Every) arquivo são armazenados em inodes em uma estrutura de tabela.

Ao usar um programa que se refere a um arquivo pelo nome, o sistema procurará no arquivo de entrada de diretório onde ele existe para obter o inode correspondente. Isso fornece ao seu sistema os dados de arquivo e as informações necessárias para executar processos ou operações.

Os inodes geralmente estão localizados perto do início de uma partição(beginning of a partition) . Eles armazenam todas as informações associadas a um arquivo, exceto o nome do arquivo e os dados reais. Todos os arquivos em qualquer diretório Linux têm um nome de arquivo e um número de inode. Os usuários podem recuperar os metadados de um arquivo referenciando o número do inode.

Nomes de arquivos(File) e números de inode são armazenados em um índice separado e link para o inode. Você pode vincular aos metadados que representam o arquivo. É possível ter vários nomes de arquivos vinculados a um dado ou inode, como você pode ver na imagem abaixo.

Qual é o número do inode?(What Is The Inode Number?)

Cada inode na estrutura do Linux tem um número único identificado com ele. Também é chamado de número de índice e possui os seguintes atributos:

  • Tamanho
  • Proprietário
  • Data hora
  • Permissões e controle de acesso
  • Localização no disco
  • Tipos de arquivo
  • Número de links
  • Metadados adicionais sobre o arquivo

Para verificar a lista de números de inode, use o seguinte comando:

ls -i

A captura de tela abaixo mostra um diretório com números de inode que aparecem na coluna da extrema esquerda.

Como funcionam os inodes?(How Do Inodes Work?)

Quando você cria um novo arquivo, ele recebe um nome de arquivo e um número de inode. Ambos são armazenados como entradas em um diretório. A execução do comando ls (ls -li ) mostrará uma lista de nomes de arquivos e números de inode armazenados em um diretório.

Use o comando abaixo para listar as informações do inode para cada sistema de arquivos.

df -oi(df -hi)

Quantos inodes você está usando?

Uma maneira de ficar sem espaço em um sistema de arquivos é usar todos os seus inodes. Mesmo que você tenha espaço livre suficiente em seu disco, não poderá criar novos arquivos.

Usar todos os inodes também pode resultar na parada repentina do sistema. Para ver uma lista de estatísticas sobre o uso do inode, como usado, gratuito e porcentagem usada, digite o seguinte comando:

sudo df -ih

Como os inodes adicionais são usados(Additional Ways Inodes Are Used)

A maneira como os inodes funcionam no Linux torna impossível ter números de inode conflitantes. Não é possível criar um link físico em diferentes sistemas de arquivos. No entanto, você pode usar soft links em diferentes sistemas de arquivos. Você pode excluir os arquivos originais e ainda ter os dados disponíveis por meio de um link físico.

Ao excluir um arquivo, tudo o que você fez foi remover um dos nomes que apontam para um número de inode específico. Os dados permanecerão até que você exclua todos os nomes associados ao mesmo número de inode. Os sistemas Linux(Linux) são atualizados sem exigir uma reinicialização do sistema em grande parte devido à maneira como os inodes funcionam. 

Um processo pode usar um arquivo de biblioteca ao mesmo tempo que outro processo substitui o mesmo arquivo por uma versão atualizada mais recente e cria um novo inode. O processo em execução continua usando o arquivo antigo. Na próxima vez que você usar o mesmo processo, ele usará a nova versão.

Os usuários não interagem diretamente com os inodes, mas representam um componente fundamental das estruturas de arquivos do Linux .



About the author

Sou um desenvolvedor web com mais de 10 anos de experiência, incluindo 8 anos como engenheiro de software profissional. Também tenho experiência no desenvolvimento de aplicativos e jogos para dispositivos móveis, tanto para desktop quanto para dispositivos móveis. No meu tempo livre, gosto de jogar videogame e assistir filmes, ouvir música, ler livros e fazer jardinagem.



Related posts