Introdução

Esta publicação tem o intuito de mostrar para os iniciantes em sistemas Linux a forma como os diretórios de sistemas Linux estão organizados. Isto é muito importante, pois ajuda a entender em parte, como o sistema funciona, quais são suas pastas chave, pastas de aplicações e usuários, etc.

A árvore de diretórios do Linux é muito interessante, após ter sido alvo de diversos projetos de padronização, ela é similar a algumas versões de sistemas comerciais UNIX.

O que é uma árvore de diretórios?

Árvore de diretórios ou folder tree é a forma como as pastas dos sistemas Linux estão organizadas. Elas têm uma hierarquia, para facilitar a organização do sistema, seus arquivos, bibliotecas e inclusive para melhorar a segurança do sistema.

Entendendo a estrutura de diretórios

A estrutura de diretórios do Linux funciona da seguinte forma.

No primeiro nível, estão os “diretórios de Gerencia”, usados pelo ROOT e Kernel do sistema.

Sendo eles os seguintes:

  • / – Pasta raiz do sistema. O sistema está todo abaixo dela, é como se fosse a raiz. Equivalente à pasta C:\ no Windows.
  • /root – Pasta “home” do usuário root, este é o usuário maior do sistema, contém todos os privilégios e é usado somente para manutenção. É equivalente ao usuário Administrador do Windows.
  • /boot – Pasta na qual ficam os arquivos usados na inicialização do sistema, onde o sistema da BOOT. Equivalente à C:\Windows\Boot no Windows
  • /bin – Arquivos Binários essenciais ao funcionamento do sistema, geralmente utilizados na inicialização do sistema. Equivale à C:\Windows\system32.
  • /etc – Guarda as configurações dos softwares oficiais; Apache, PHP, Postfix, UFW são alguns por exemplo. Equivale à C:\Program Files\.
  • /opt – Guarda as configurações dos softwares mantidos por terceiros. Ex: O Google Chrome para Ubuntu fica nesta pasta. Equivale à C:\Program Files\
  • /lib – Guarda os módulos do Kernel e as bibliotecas necessárias para o funcionamento do sistema e aplicações instaladas; Equivale às dlls do Windows.
  • /dev – Guarda os arquivos dos drivers do sistema, equivale à C:\Windows\system32\drivers.
  • /tmp – Arquivos temporários, são deletados ao iniciar o sistema. Equivale à pasta %temp% de arquivos temporários do Windows.
  • /sbin – Arquivos binários do sistema operacional.
  • /home – Pasta home dos usuários do sistema, equivalente à C:\Users\ no Windows.
  • /var – Dados de arquivos variáveis, que não são estáticos, mais precisamente. Esta pasta guarda Logs dos softwares em execução, arquivos que estão em processamento e afins, os arquivos de um site ficam aqui, por exemplo websites do Apache. Equivale à pasta C:\ProgramData\
  • /media – Pasta base para a montagem dos dispositivos móveis conectados ao sistema, tais como Telefone, Pendrives, etc…
  • /proc – Pasta que contem os arquivos especiais necessários no Kernel e arquivos que interagem com ele.
  • /usr – A maior parte dos aplicativos ficam instalados nesta pasta.
  • /sys – Contém os arquivos principais do Kernel 2.6, o funcionamento é parecido com a pasta /proc

O segundo escalão

À partir do diretório /usr começa a segunda hierarquia dos sistemas de arquivos Linux, a principal característica desta hierarquia, é que ela pode conter tudo o que há na pasta raiz, um exemplo é a pasta /usr/bin, nela pode ficar tudo o que ficaria na pasta /bin, desde que os softwares e arquivos não sejam necessários para o boot do sistema, nem precisem de inicialização automática.

O Terceiro escalão

Esta hierarquia funciona da seguinte forma, geralmente se inicia à partir da pasta /usr/local e as razões por trás das hierarquias adicionais são históricas, mas elas permitem manobras interessantes, como a gravação em mídias protegidas contra gravação, ou o compartilhamento de um mesmo diretório /usr por uma série de computadores ligados em rede.

Alguns conteúdos interessantes podem ser encontrados por padrão dentro da hierarquia do /usr – um exemplo é a documentação dos pacotes instalados, que deve residir em /usr/share/docs.

Conclusão

No “primeiro escalão” estão as pastas e arquivos essenciais, usados no gerenciamento do sistema e suas funções primárias; No “segundo escalão” estão os arquivos utilizados pelo usuário em sessão ou por computadores interligados via rede, mas que não são tão prioritários para o sistema ou que precisem de inicialização automática, como o firewall por exemplo; Já no “terceiro escalão” desta hierarquia, ficam funcionalidades privadas, no caso de um computador mantido na rede ou com processos multicomputacionais, os arquivos e softwares nesta pasta não podem ser alcançados por ninguém, além do usuário logado no terminal local, é muito usada para gravar mídias protegidas contra gravação, ou o compartilhamento de um mesmo diretório /usr por uma série de computadores ligados em rede.

Caso tenha alguma dúvida, poste nos comentários que irei responder assim que possível.