Product SiteDocumentation Site

B.2. Organização da Hierarquia de Sistema de Arquivos

B.2.1. O Diretório Raiz

Um sistema Debian é organizado de acordo com o Filesystem Hierarchy Standard (FHS). Esta norma define a finalidade de cada diretório. Por exemplo, os diretórios de nível superior são descritos como se segue:
  • /bin/: programas básicos;
  • /boot/: núcleo Linux e outros arquivos necessários para os primeiros passos de seu processo de inicialização;
  • /dev/: arquivos de dispositivo;
  • /etc/: Arquivos de configuração;
  • /home/: arquivos pessoais dos usuários;
  • /lib/: bibliotecas básicas;
  • /media/*: pontos de montagem para dispositivos removíveis (CD-ROM, pendrivers e assim por diante);
  • /mnt/: ponto de montagem temporário;
  • /opt/: aplicações extras fornecidas por terceiros;
  • /root/: arquivos pessoais do administrador (root);
  • /run/: dados de execução volátil (volatile runtime data) que não persistem entre re-inicializações;
  • /sbin/: programas do sistema;
  • /srv/: dados utilizados por servidores hospedados neste sistema;
  • /tmp/: arquivos temporários, este diretório é comumente limpo na inicialização;
  • /usr/: aplicações; este diretório é subdividido em bin, sbin, lib (de acordo com a mesma lógica do diretório raiz). Além disso, /usr/share/ contém dados independentes de arquitetura. /usr/local/ é feito para ser usado pelo administrador para instalar aplicativos manualmente, sem sobrescrever arquivos administrados pelo sistema de empacotamento (dpkg).
  • /var/: dados variáveis manipulados por daemons. Isto inclui arquivos de log, filas, spools, caches e por aí vai.
  • /proc/ e /sys/ são específicos do núcleo Linux ( e não fazem parte do FHS). Eles são usados pelo núcleo para exportar dados para o espaço de usuário (veja Seção B.3.4, “O Espaço de Usuário” e Seção B.5, “O Espaço de Usuário” para explicações sobre esse conceito).
Observe que muitas distribuições modernas, inclusive a Debian, fornecem /bin, /sbin e /lib como links simbólicos para os diretórios correspondentes em /usr para que todos os programas e bibliotecas fiquem disponíveis em uma única árvore. Assim fica mais fácil proteger a integridade do sistema de arquivos, e compartilhar aqueles arquivos de sistema entre múltiplos containers, etc.

B.2.2. O Diretório Origem (home) do Usuário

O conteúdo do diretório home do usuário não é padronizado, mas ainda existem algumas convenções relevantes. Uma delas é que o diretório home do usuário é muitas vezes referenciado por um til ("~"). É bom saber disto porque os interpretadores de comando substituem automaticamente um til pelo diretório correto (geralmente /home/user/).
Tradicionalmente, os arquivos de configuração de aplicativos são frequentemente armazenados diretamente sob o diretório home do usuário, mas seus nomes geralmente começam com um ponto (por exemplo, o cliente de email mutt armazena sua configuração em ~/.muttrc). Note que nomes de arquivos que começam com um ponto são ocultos por padrão; e ls os lista apenas quando a opção -a for usada, e gerenciadores de arquivos gráficos precisa ser ordenados para exibir arquivos ocultos.
Some programs also use multiple configuration files organized in one directory (for instance, ~/.ssh/). Some applications also use their directory to store a cache of downloaded data. This means that those directories can end up using a lot of disk space.
Esses arquivos de configuração armazenados diretamente no diretório home do usuário, muitas vezes chamados coletivamente como dotfiles, há tempos se proliferam a tal ponto que estes diretórios podem ficar abarrotados com eles. Felizmente, um esforço liderado coletivamente sob a orientação da FreeDesktop.org resultou na "Especificação de Diretórios Base da XDG", uma convenção que visa limpar esses arquivos e diretórios. Esta especificação estabelece que os arquivos de configuração devem ser armazenados sob ~/.config, arquivos de cache sob ~/.cache, e arquivos de dados de aplicativos sob ~/.local (ou subdiretórios nos mesmos). Esta convenção está lentamente ganhando força e vários aplicativos (especialmente os gráficos) começaram a segui-la.
Ambientes gráficos geralmente exibem o conteúdo do diretório ~/Desktop (ou qualquer que seja a tradução apropriada para sistemas não configurados em inglês) na área de trabalho (ou seja, o que é visível na tela uma vez que todas as aplicações estão fechadas ou minimizadas).
Finalmente, o sistema de e-mail às vezes armazena e-mails recebidos no diretório ~/Mail/.