O que são Inodes e Superblocos no Linux

Inodes e Superblocos no Linux

Neste artigo vamos apresentar dois conceitos muito importantes para a administração de sistemas Linux: Inodes e Superblocos. Ambos tem relação com o gerenciamento do sistema de arquivos (filesystem)

Inode

Todo arquivo em um sistema de arquivos Linux possui um número especial que é chamado de Inode. O inode é uma estrutura de dados usada pelo sistema operacional para armazenar as propriedades do arquivo, e ele contém informações como:

  • Informações sobre grupo e proprietário do arquivo
  • Tipo do arquivo (comum, diretório, socket, pipe, bloco, etc.)
  • Permissões do arquivo
  • Tamanho do arquivo
  • Data e hora na qual o arquivo foi criado
  • Data e hora da última modificação ou leitura
  • Outras informações específicas

Uma definição mais formal de inode, retirada da Wikipedia, é a seguinte:

"Em um sistema de arquivos de estilo Unix, um nó de índice, informalmente referido como um nó-i (inode), é uma estrutura de dados usada para representar um objeto do sistema de arquivos, que pode ser uma de várias coisas, incluindo um arquivo ou diretório."

Como vemos, o conceito de inode é pertinente aos sistemas Unix e derivados, não estando presente somente em distribuições Linux.

Em Linux, podemos descobrir o número de inode de um arquivo ou diretório usando a opção -i do comando ls. Por exemplo, se quisermos descobrir o inode do arquivo /etc/passwd, basta executar o comando a seguir:

# ls -li /etc/passwd

Outra opção é usar o comando stat, que traz várias informações sobre um arquivo passado como parâmetro, incluindo seu número de inode. Veja o exemplo a seguir:

$ stat /etc/passwd

Saída:

Comando stat no Linux  mostrando inodes

Caso você queria ver as informações de inodes do sistema de arquivos, pode usar o comando df com a opção -i:

$ df -i

Saída:

Comando df-i no Linux mostrando inodes

Superbloco

O superbloco é utilizado para unir todos os inodes em um sistema de arquivos, contendo todas as informações necessárias para gerenciar os arquivos.

Como o superbloco é muito importante no sistema, é comum haver uma cópia de backup do superbloco em intervalos regulares no sistema de arquivos, além de ser mantida uma cópia em memória RAM.

Podemos visualizar o conteúdo do superbloco em uma partição, como a /dev/sda1, com o comando dumpe2fs, como segue:

# dumpe2fs /dev/sda1

A figura a seguir mostra o resultado da execução desse comando em uma distribuição Linux Fedora 26 (apenas uma parte da saída é mostrada, pois o comando retorna muitas informações):

Comando dumpe2fs no Linux Fedora, mostrando o superbloco

É isso aí! Neste artigo introduzimos os conceitos de inodes e superblocos no Linux. Na próxima lição vamos falar mais sobre o sistema de arquivos do Unix / Linux.

Até lá!

 

Sobre Fábio dos Reis (1198 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Astronomia, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

2 Comentários em O que são Inodes e Superblocos no Linux

  1. Fábio, pode-se dizer que os INODES servem para indicar também a posição/local do arquivo dentro do disco?

Escreva um comentário

Seu e-mail não será divulgado


*