Tudo é um arquivo!
No Linux, tudo é tratado como arquivo: documentos, diretórios, discos, partições e até mesmo dispositivos de hardware. Essa característica é fundamental porque unifica o modo como interagimos com os recursos do sistema — acessar um dispositivo, por exemplo, segue a mesma lógica de acessar um arquivo comum.
Para organizar esses arquivos, o Linux utiliza uma estrutura hierárquica em forma de árvore (definida pelo padrão Filesystem Hierarchy Standard), que tem como ponto de partida o diretório raiz (/). A partir dele, se ramificam todos os demais diretórios, como /bin, /home e /etc, cada um com funções específicas dentro do sistema.
Dentro dessa hierarquia, um diretório também é considerado um arquivo especial. Em vez de armazenar dados diretamente, ele funciona como um arquivo de arquivos, contendo uma lista de nomes e os números dos inodes correspondentes a cada item.
Os inodes (index nodes) são estruturas de dados que descrevem um arquivo ou diretório. Cada inode armazena:
- dono e permissões de acesso;
- tamanho em bytes;
- datas de criação, modificação e último acesso;
- endereços dos blocos no disco onde os dados estão gravados.
É importante destacar que o inode não armazena o nome do arquivo — essa informação fica no diretório, que atua como um mapa associando nomes a inodes.
Essa combinação entre árvore hierárquica, diretórios e inodes torna o Linux um sistema flexível, organizado e seguro para gerenciar arquivos.
O termo sistema de arquivos (file system) pode ter dois sentidos diferentes:
- Visão lógica — é a forma como os diretórios e arquivos são organizados em uma árvore hierárquica (árvore de diretórios), que o usuário pode navegar.
Exemplo:root@ubuntu:/home# tree . ├── helioandrade │ ├── cod3x │ │ ├── empresa │ │ └── pessoal │ ├── programas │ └── videos └── joao
- Visão física — é como os dados são realmente gravados no disco. Cada tipo de sistema de arquivos (
ext4,XFS,FAT32,NTFSetc.) define as regras para armazenar blocos de dados e metadados (tamanho, permissões, dono etc.), o que influencia desempenho, segurança e recursos disponíveis.
Exemplo:NAME FSTYPE LABEL UUID MOUNTPOINT sda ├─sda1 ext4 rootfs a1b2c3d4-e5f6-7890-abcd-1234567890ab / ├─sda2 ext4 boot 1234abcd-56ef-7890-1234-abcdef567890 /boot └─sda3 swap swap abcd1234-5678-90ef-ab12-34567890cdef [SWAP] sdb └─sdb1 ext4 data 0987abcd-6543-21ef-ba98-76543210fedc /mnt/data sr0 iso9660 Ubuntu-20.04.3-Live 2021-08-20-18-00-00-00 /media/cdrom
Resumindo:
- Organização lógica = a estrutura de diretórios (“pastas”) e arquivos que você enxerga.
- Organização física = como o sistema operacional organiza e controla os dados no disco.
