Sistema de arquivos Unix

Em sistemas operacionais Unix e seus derivados, o sistema de arquivos é considerado um componente central desse sistema operacional.[1] Foi também uma das primeiras partes do sistema a ser criadas e implementadas por Ken Thompson, em 1969.[2]

Os sistemas tipo Unix usam uma só árvore e o acesso a demais dispositivos é feito através do processo de montagem.

Um diretório, ao invés de conter dados, pode ter o conteúdo (os dados) de um dispositivo (partição no HD, disquete, CD-ROM). É como se você pegasse a árvore do dispositivo e encaixasse em um diretório da árvore Unix. Assim, sempre que alguém entra naquele diretório estará acessando, na verdade, o dispositivo. A isso chamamos montagem. E isso funciona para qualquer diretório, em primeira análise.

Por isso, às vezes é vantagem ter partições para alguns diretórios básicos. Em caso de reinstalação, há diretórios que não precisam ser formatados. Apesar de ser permitida a criação de mais de uma partição destinada a um dos diretórios básicos, isso não é exigido. Uma instalação de um Unix precisa ter apenas uma partição permanente, além de uma com sistema de arquivos para swap, que não entra na árvore.[3]

Organização convencional dos diretórios

Diretório ou arquivo[4] Descrição
/ A barra invertida / sozinha carateriza a raiz da árvore de arquivos.
/bin
Diretório onde estão guardados os comandos essenciais do sistema.
/boot
Contém o kernel do sistema.
/dev
São encontrados os arquivos de dispositivos de hardware.
/etc
Contém os arquivos de configuração do sistema.
/home
Contém os diretórios dos usuários.
/lib
Onde são localizados bibliotecas essenciais compartilhadas e módulos do kernel.
/media
Ponto de montagem padrão para dispositivos removíveis, como pen drives, tocadores de mídia, etc.
/mnt
Ponto de montagem temporária de sistemas de arquivos.
/opt
contém os pacotes de softwares opcionais.
/proc
Sistema de arquivos virtual de informações do kernel e seus processos.
/root
Diretório do superusuário root
/sbin
Estão localizados os comandos essenciais de administração do sistema.
/srv
Estão localizados os códigos-fonte do sistema.
/sys
Em algumas distribuições Linux, contém um sysfs virtual em seu sistema de arquivos, que contém informações relacionadas ao hardware e do sistema operacional. Em sistemas BSD, comumente um link simbólico para as fontes do kernel em /usr/src/sys.
/tmp
Estão localizados os arquivos temporários.
/unix
O núcleo do Unix em Pesquisa Unix e System V. Com a adição de memória virtual apoiado aos 3BSD, este foi renomeado para /vmunix.
/usr
Estão localizados a hierarquia secundária.
/bin
Este diretório estão localizados os comandos essenciais do sistema.
/include
Contém os arquivos de cabeçalho, incluindo por programas em C.
/lib
Biblotecas compartilhadas essenciais e módulos do kernel.
/libexec
Ele inclui binários internos que não se destinam a ser executado diretamente pelos usuários ou scripts shell. Os aplicativos podem usar um único subdiretório em /usr/libexec.
/local
Contém uma hierarquia local.
/share
Contém uma hierarquia local, independente de sua arquitetura.
/var
Dados variáveis.
/log
Arquivos de logs.
/mail
O lugar onde todos os e-mails recebidos são armazenados. Usuários (exceto o root) pode acessar apenas o seu próprio e-mail. Muitas vezes, esse diretório é um link simbólico para /var/spool/mail.
/spool
Dados de Spool das aplicações.

Notas e Referências

  1. M. Ritchie, Dennis. «The Evolution of the Unix Time-sharing System*». cm.bell-labs.com (em inglês). Consultado em 15 de fevereiro de 2015 
  2. «The UNIX Time- Sharing System» (PDF). cs.berkeley.edu (em inglês). Consultado em 15 de fevereiro de 2015 
  3. «Introdução ao Sistema Operacional UNIX: Gerenciamento de arquivos». www.cenapad.unicamp.br. Consultado em 23 de julho de 2021 
  4. Ferreira, Rubem E. «22». In: Novatec. Linux:guia do administrador do sistema. 2008. São Paulo: [s.n.] 707 páginas. ISBN 9788575221778