hier - Descrição da hierarquia de sistema de
arquivos
Um sistema Linux típico tem os seguintes diretórios,
entre outros:
- /
- Este é o diretório root (raiz). É nele que
começa a árvore inteira.
- /bin
- Este diretório contém programas executáveis que
são necessários no modo "single user" e recuperam
ou reparam o sistema.
- /boot
- Contém arquivos estáticos para o carregador de boot. Este
diretório somente mantém os arquivos que são
necessários durante o processo de boot. Os arquivos do instalador
de mapas e de configuração deveriam ir para /sbin e
/etc.
- /dev
- Arquivos especiais ou de dispositivo, que se refere a dispositivos
físicos. Veja mknod(1).
- /dos
- Se o MS-DOS e o Linux estão rodando juntos em um computador, este
é um lugar típico para se montar um sistema de arquivos do
DOS.
- /etc
- Contém arquivos de configuração que são locais
para a máquina. Alguns pacotes de softwares maiores, como o X11,
podem ter seus próprios subdiretórios abaixo de /etc.
Arquivos de configuração geral podem ser colocados aqui ou
em /usr/etc. Contudo, programas deveriam sempre procurar esses
arquivos em /etc e você pode ter links para esses arquivos
em /usr/etc.
- /etc/skel
- Quando é criada uma nova conta de usuário, os arquivos deste
diretório geralmente são copiados para o diretório
"home" do usuário.
- /etc/X11
- Arquivos de configuração do sistema de janelas X11.
- /home
- Em máquinas com diretório "home" para
usuários, estes geralmente estão abaixo deste
diretório, diretamente ou não. A estrutura deste
diretório depende de decisões da administração
local.
- /lib
- Este diretório deveria manter aquelas bibliotecas compartilhadas
que são necessárias para realizar o boot do sistema e rodar
os comandos no sistema de arquivos do root.
- /mnt
- é um ponto de montagem para sistemas de arquivos montados
temporariamente
- /proc
- Este é um ponto de montagem para o sistema de arquivos proc
, que fornece informação sobre processos rodando e o kernel.
Este pseudo-sistema de arquivos é descrito em mais detalhes em
proc(5).
- /sbin
- Da mesma forma que /bin, este diretório mantém
comandos necessários para realizar o boot do sistema, mas que
geralmente não são executados por usuários
normais.
- /tmp
- Este diretório contém arquivos temporários que podem
ser apagados sem nenhuma notificação, tais como por
serviços regulares ou no boot do sistema.
- /usr
- Este diretório geralmente montado a partir de uma
partição separada. Ele deveria manter somente dados
compartilháveis e apenas de leitura, de forma que possa ser montado
por várias máquinas rodando Linux.
- /usr/X11R6
- O sistema X-Window, versão 11, distribuição 6.
- /usr/X11R6/bin
- Binários que pertencem ao sistema X-Windows; frequentemente,
há um link simbólico de um /usr/bin/X11 mais
tradicional para este ponto.
- /usr/X11R6/lib
- Arquivos de dados associados com o sistema X-Windows.
- /usr/X11R6/lib/X11
- Estes contém arquivos variados necessários para rodar o X;
frequentemente, há um link simbólico de /usr/lib/X11
para este diretório.
- /usr/X11R6/include/X11
- Contém arquivos de inclusão necessários para compilar
programas usando o sistema de janelas X11. Frequentemente, há um
link simbólico de /usr/include/X11 para este
diretório.
- /usr/bin
- Este é o diretório primário para programas
executáveis. Muitos programas executados por usuários
normais que não são necessários para o boot, ou para
a reparação do sistema, e que não são
instalados localmente, devem ser colocados neste diretório.
- /usr/bin/X11
- é o lugar tradicional para procurar executáveis X11'no
Linux, ele geralmente é um link simbólico para
/usr/X11R6/bin.
- /usr/dict
- Este diretório mantém arquivos contendo listas de palavras
para verficadores ortográficos.
- /usr/doc
- Você deveria procurar documentação sobre pacotes de
softwares instalados neste deretório.
- /usr/etc
- Arquivos de configuração gerais a serem compartilhados entre
várias máquinas podem ser armazenados neste
diretório. Porém, os comandos deveriam sempre referenciar
aqueles arquivos usando o diretório /etc /etc
deveriam apontar para os arquivos apropriados em /usr/etc.
- /usr/include
- Arquivos de inclusão para o compilador C.
- /usr/include/X11
- Arquivos de inclusão para o compilador C e o sistema X-Windows.
Geralmente este é um link simbólico para
/usr/X11R6/include/X11.
- /usr/include/asm
- Arquivos de inclusão que declaram algumas funções de
assembladores. Este costuma ser um link simbólico para
/usr/src/linux/include/asm.
- /usr/include/linux
- Este contém informação que pode mudar de uma
distribuição de sistema para outro, e costuma ser um link
simbólico para /usr/src/linux/include/linux para obter
informação específica do sistema operacional.
(Note que se poderia ter arquivos de inclusão que
funcionem corretamente com a libc corrente e no espaço de
usuário. Porém, os fontes do kernel do Linux não
são projetados para serem usados com programas de usuário
e não sabe nada sobre a libc que você está usando.
É muito provável que as coisas darão problemas se
você deixar /usr/include/asm e /usr/include/linux
apontarem para uma árvore de kernel aleatória. Sistemas
Debian não fazem isso e usam cabeçalhos de uma
versão conhecida de um bom kernel, fornecida no pacote
libc*-dev.)
- /usr/include/g++
- Arquivos de inclusão para usar com o compilador GNU C++.
- /usr/lib
- Bibliotecas de objeto, incluindo bibliotecas dinâmicas, mais alguns
executáveis que geralmente não são invocados
diretamente. Programas mais complicados podem ter subdiretórios
inteiros ali.
- /usr/lib/X11
- O lugar usual para arquivos de dados associados com programas X, e
arquivos de configuração para o próprio sistema X. Em
Linux, geralmente é um link simbólico para
/usr/X11R6/lib/X11.
- /usr/lib/gcc-lib
- contém executáveis e arquivos de inclusão para o
compilador GNU C, gcc(1).
- /usr/lib/groff
- Arquivos para o sistema de formatação de documentos GNU
groff.
- /usr/lib/uucp
- Arquivos para uucp(1).
- /usr/lib/zoneinfo
- Arquivos para informação de fusos horários.
- /usr/local
- Aqui é onde vão tipicamente os programas que são
locais para o site.
- /usr/local/bin
- Binários para programas que são locais para o site
vão ali.
- /usr/local/doc
- Documentação local
- /usr/local/etc
- Arquivos de configuração associados com programas instalados
localmente vão ali.
- /usr/local/lib
- Arquivos associados com programas instalados localmente vão
ali.
- /usr/local/info
- Páginas de informação associadas com programas
instalados localmente vão ali.
- /usr/local/man
- Páginas de manual associados com programas instalados localmente
vão ali.
- /usr/local/sbin
- Programas instalados localmente para administração do
sistema.
- /usr/local/src
- Código fonte para software instalado localmente.
- /usr/man
- Páginas de manual vão ali, para seus
subdiretórios.
- /usr/man/<locale>/man[1-9]
- Esses diretórios contêm páginas de manual que
estão na forma de código fonte. Sistemas que usam uma
única linguagem e conjunto de códigos para todas as
páginas de manual podem omitir a substring
<locale>
- /usr/sbin
- Estes diretórios contêm binários de programas para
administração de sistema, que não são
essenciais para o processo de boot, para a montagem de /usr, ou
para a reparação do sistema.
- /usr/share
- Este diretório contém subdiretórios com dados
específicos de aplicações, que podem ser
compartilhados entre diferentes arquiteturas do mesmo SO. Frequentemente
alguém achará material que deveria estar em /usr/doc
or /usr/lib or /usr/man.
- /usr/src
- Arquivos fonte para diferentes partes do sistema, incluídos com
alguns pacotes para propósitos de referência. Não
funciona aqui com seus próprios projetos, pois os arquivos abaixo
de usr deveriam ser somente-leitura, exceto durante a
instalação de software.
- /usr/src/linux
- Este têm sido o lugar tradicional onde os fontes do kernel
são desempacotados. Isto foi importante em sistemas em que
/usr/include/linux era um link simbólico aqui. Agora, você
provavelmente deveria usar outro diretório para a
construção do kernel.
- /usr/tmp
- Um lugar alternativo para armazenar arquivos temporários; isto
deveria ser um link para /var/tmp. Este link está presente
somente por razões de compatibilidade e não deveria ser
usado.
- /var
- Este diretório contém arquivos que podem mudar de tamanho,
tais como arquivos de spool e log.
- /var/adm
- Este diretório é sobreposto por /var/log e deveria
ser um link simbólico para /var/log.
- /var/backups
- Este diretório é usado para guardar cópias de backup
de arquivos de sistema importantes.
- /var/catman/cat[1-9]
- Esses diretórios contêm páginas de manual
pré-formatados, de acordo com suas seções de
manual.
- /var/lock
- Arquivos de travamento são colocados neste diretório. A
convenção de nomenclatura para arquivos de travamento de
dispositivos é LCK..<device> onde
<device> é o nome do dispositivono sistema de
arquivos. O formato usado é o dos arquivos de travamento HDU UUCP,
isto é, arquivos de travamento contêm um PID como um
número decimal ASCII de 10 bytes, seguido de um caractere de nova
linha.
- /var/log
- Arquivos de log variados.
- /var/preserve
- Aqui é onde vi(1) grava sessões de
edição que podem ser restauradas mais tarde.
- /var/run
- Arquivos variáveis de tempo de execução, como
arquivos mantendo identificadores de processos (PIDs) e
informações do usuário em forma de log (utmp).
Os arquivos neste diretório geralmente são apagados quando o
sistema realiza o boot.
- /var/spool
- Arquivos de spool (ou enfileirados) para vários programas.
- /var/spool/at
- Serviços no spool para at(1).
- /var/spool/cron
- Serviços no spool para cron(1).
- /var/spool/lpd
- Arquivos no spool de impressão.
- /var/spool/mail
- Caixas de correio dos usuários.
- /var/spool/smail
- Arquivos de spool para o programa de distribuição de correio
smail(1)
- /var/spool/news
- Diretório de spool para o subsistemas de notícias.
- /var/spool/uucp
- Arquivos no spool para uucp(1).
- /var/tmp
- Como /tmp, este diretório mantém arquivos
temporários armazenados por uma duração não
especificada.
O padrão de sistema de arquivos do Linux,
distribuição 1.2.
Esta lista não é exaustiva; sistemas diferentes
podem ser configurados de formas diferentes.
Rubens de Jesus Nogueira
<darkseid99@usa.net> (tradução)
André L. Fassone Canova
<lonelywolf@blv.com.br> (revisão)