A estrutura de diretórios do Linux, explicada
Se você está vindo do Windows, a estrutura do sistema de arquivos do Linux pode parecer particularmente estranha. A unidade C: \ e as letras de unidade desapareceram, sendo substituídas por um / e diretórios que soam enigmáticos, a maioria dos quais possui três nomes de letras.
O Filesystem Hierarchy Standard (FHS) define a estrutura dos sistemas de arquivos no Linux e em outros sistemas operacionais semelhantes ao UNIX. No entanto, os sistemas de arquivos Linux também contêm alguns diretórios que ainda não estão definidos pelo padrão.
/ - O diretório raiz
Tudo no seu sistema Linux está localizado no diretório /, conhecido como o diretório raiz. Você pode pensar no diretório / como sendo similar ao diretório C: \ no Windows - mas isso não é estritamente verdadeiro, já que o Linux não possui letras de unidade. Enquanto outra partição estaria localizada em D: \ no Windows, esta outra partição apareceria em outra pasta sob / no Linux.
/ bin - Binários de Usuários Essenciais
O diretório / bin contém os binários (programas) essenciais do usuário que devem estar presentes quando o sistema é montado no modo de usuário único. Aplicativos como o Firefox são armazenados em / usr / bin, enquanto importantes programas do sistema e utilitários, como o shell bash, estão localizados em / bin. O diretório / usr pode ser armazenado em outra partição - colocar esses arquivos no diretório / bin garante que o sistema terá esses utilitários importantes, mesmo se nenhum outro sistema de arquivos estiver montado. O diretório / sbin é semelhante - contém binários essenciais de administração do sistema.
/ boot - arquivos de inicialização estáticos
O diretório / boot contém os arquivos necessários para inicializar o sistema - por exemplo, os arquivos do carregador de inicialização GRUB e seus kernels Linux são armazenados aqui. Os arquivos de configuração do carregador de inicialização não estão localizados aqui - eles estão em / etc com os outros arquivos de configuração.
/ cdrom - Historical Mount Point para CD-ROMs
O diretório / cdrom não faz parte do padrão FHS, mas você ainda o encontrará no Ubuntu e em outros sistemas operacionais. É um local temporário para CD-ROMs inseridos no sistema. No entanto, o local padrão para mídia temporária está dentro do diretório / media.
/ dev - Arquivos do dispositivo
O Linux expõe dispositivos como arquivos e o diretório / dev contém vários arquivos especiais que representam dispositivos. Estes não são arquivos reais como os conhecemos, mas aparecem como arquivos - por exemplo, / dev / sda representa a primeira unidade SATA no sistema. Se você quisesse particioná-lo, você poderia iniciar um editor de partições e dizer para editar / dev / sda.
Esse diretório também contém pseudo-dispositivos, que são dispositivos virtuais que na verdade não correspondem ao hardware. Por exemplo, / dev / random produz números aleatórios. / dev / null é um dispositivo especial que não produz saída e automaticamente descarta todas as entradas - quando você canaliza a saída de um comando para / dev / null, você o descarta.
/ etc - Arquivos de configuração
O diretório / etc contém arquivos de configuração, que geralmente podem ser editados manualmente em um editor de texto. Observe que o diretório / etc / contém arquivos de configuração de todo o sistema - os arquivos de configuração específicos do usuário estão localizados no diretório inicial de cada usuário.
/ home - Pastas Domésticas
O diretório / home contém uma pasta inicial para cada usuário. Por exemplo, se o seu nome de usuário for bob, você terá uma pasta pessoal localizada em / home / bob. Essa pasta inicial contém os arquivos de dados do usuário e os arquivos de configuração específicos do usuário. Cada usuário só tem acesso de gravação à sua própria pasta pessoal e deve obter permissões elevadas (tornar-se o usuário root) para modificar outros arquivos no sistema..
/ lib - Bibliotecas compartilhadas essenciais
O diretório / lib contém as bibliotecas necessárias pelos binários essenciais na pasta / bin e / sbin. Bibliotecas necessárias pelos binários na pasta / usr / bin estão localizadas em / usr / lib.
/ lost + found - arquivos recuperados
Cada sistema de arquivos do Linux possui um diretório lost + found. Se o sistema de arquivos falhar, uma verificação do sistema de arquivos será executada na próxima inicialização. Quaisquer arquivos corrompidos encontrados serão colocados no diretório lost + found, para que você possa recuperar o máximo de dados possível.
/ media - Mídia removível
O diretório / media contém subdiretórios nos quais dispositivos de mídia removível inseridos no computador são montados. Por exemplo, quando você insere um CD em seu sistema Linux, um diretório será criado automaticamente dentro do diretório / media. Você pode acessar o conteúdo do CD dentro deste diretório.
/ mnt - pontos de montagem temporários
Historicamente falando, o diretório / mnt é onde os administradores de sistemas montam sistemas de arquivos temporários ao usá-los. Por exemplo, se você estiver montando uma partição do Windows para executar algumas operações de recuperação de arquivos, poderá montá-la em / mnt / windows. No entanto, você pode montar outros sistemas de arquivos em qualquer lugar do sistema.
/ opt - Pacotes opcionais
O diretório / opt contém subdiretórios para pacotes de software opcionais. É comumente usado por software proprietário que não obedece a hierarquia padrão do sistema de arquivos - por exemplo, um programa proprietário pode despejar seus arquivos em / opt / application quando você o instala.
/ proc - Kernel & Process Files
O diretório / proc é semelhante ao diretório / dev porque não contém arquivos padrão. Ele contém arquivos especiais que representam informações do sistema e do processo.
/ raiz - diretório Home raiz
O diretório / root é o diretório inicial do usuário root. Em vez de estar localizado em / home / root, está localizado em / root. Isso é diferente de /, que é o diretório raiz do sistema.
/ run - Arquivos de estado do aplicativo
O diretório / run é relativamente novo e fornece aos aplicativos um local padrão para armazenar arquivos temporários que eles precisam, como soquetes e IDs de processo. Esses arquivos não podem ser armazenados em / tmp porque os arquivos em / tmp podem ser excluídos.
/ sbin - Binários de administração do sistema
O diretório / sbin é semelhante ao diretório / bin. Ele contém binários essenciais que geralmente são executados pelo usuário root para administração do sistema..
/ selinux - SELinux Virtual File System
Se a sua distribuição Linux usa o SELinux para segurança (Fedora e Red Hat, por exemplo), o diretório / selinux contém arquivos especiais usados pelo SELinux. É semelhante ao / proc. O Ubuntu não usa o SELinux, então a presença dessa pasta no Ubuntu parece ser um bug.
/ srv - dados de serviço
O diretório / srv contém "dados para serviços fornecidos pelo sistema". Se você estivesse usando o servidor Apache HTTP para servir um site, provavelmente armazenaria os arquivos do seu site em um diretório dentro do diretório / srv.
/ tmp - arquivos temporários
Aplicativos armazenam arquivos temporários no diretório / tmp. Esses arquivos geralmente são excluídos sempre que o sistema é reiniciado e pode ser excluído a qualquer momento por utilitários como o tmpwatch..
/ usr - Binários do usuário e dados somente leitura
O diretório / usr contém aplicativos e arquivos usados pelos usuários, ao contrário dos aplicativos e arquivos usados pelo sistema. Por exemplo, aplicativos não essenciais estão localizados dentro do diretório / usr / bin em vez do diretório / bin e binários de administração de sistemas não essenciais localizados no diretório / usr / sbin em vez do diretório / sbin. As bibliotecas de cada uma estão localizadas dentro do diretório / usr / lib. O diretório / usr também contém outros diretórios - por exemplo, arquivos independentes de arquitetura, como gráficos, estão localizados em / usr / share.
O diretório / usr / local é o local onde os aplicativos compilados localmente são instalados por padrão - isso impede que eles copiem o restante do sistema.
/ var - arquivos de dados variáveis
O diretório / var é a contraparte gravável do diretório / usr, que deve ser somente leitura em operação normal. Os arquivos de log e tudo mais que normalmente seria gravado em / usr durante a operação normal são gravados no diretório / var. Por exemplo, você encontrará arquivos de log em / var / log.
Para obter informações técnicas mais detalhadas sobre a hierarquia do sistema de arquivos do Linux, consulte a documentação do Filesystem Hierarchy Standard.