Uma das coisas que realmente me atrapalha em entender o Linux é a enorme diferença entre o sistema de arquivos no Linux e o Windows. Até os últimos 3-4 anos, usei apenas sistemas Windows e foram apenas nos últimos 2-3 meses que realmente trabalhei para me acostumar ao Linux. Acho que uma das coisas que realmente me incomoda nesse momento é que senti que poderia encontrar praticamente tudo o que queria quando comecei a vasculhar as várias pastas do Windows. Eu me acostumei a que tipo de coisas eram colocadas onde e quando. Eu não tenho isso com Linux. Estou aprendendo algumas coisas como a pasta / opt é onde a maioria dos programas de terceiros é instalada ... mas meu entendimento é limitado.
directory-structure
Kenneth
fonte
fonte
Respostas:
Veja o FHS ( Filesystem Hierarchy Standard ), que é um padrão de organização da estrutura de diretórios . Eu suspeito fortemente que a maioria (todos?) Dos sistemas baseados em Linux o seguem mais ou menos.
fonte
Em algumas distribuições * nix (testadas no OpenBSD e Ubuntu), a página de manual para a hierarquia do sistema de arquivos pode ser útil.
Obviamente, isso variará dependendo da plataforma e da atualização das páginas do manual. A página do manual (no Ubuntu) também faz referência ao padrão de hierarquia de sistemas de arquivos apontado anteriormente.
Não encontrei uma entrada manual semelhante no solaris.
Em geral, diferentes distribuições linux são livres para colocar as coisas onde quiserem, para que fique confuso rapidamente. A maioria dos executáveis que o sistema instala (como parte do sistema básico ou através de um gerenciador de pacotes) terminará em algum lugar no caminho padrão (geralmente em / usr / bin / usr / sbin / usr / local / bin / usr / local / sbin), embora algumas distribuições usem / opt, / usr / share / bin, entre outras. Um paralelo pode ser desenhado para a pasta "Arquivos de Programas" no Windows. A pasta "Windows" pode ser algo como / usr / lib / usr / include / usr / share e outros. Sua pasta "Meus Documentos" é um tanto paralela ao seu diretório pessoal no linux (/ home / user), com a boa adição de que a maioria das configurações específicas do usuário para programas como o Firefox, Thunderbird, etc, vivem aqui, tornando a migração para um novo sistema bastante simples.
O problema com esses paralelos é que eles não são exatamente precisos. Windows e linux são diferentes nesse aspecto.
O melhor caminho a seguir é continuar mexendo no sistema, como você provavelmente fez quando começou a usar o Windows, quebrar coisas, corrigi-las e fazer perguntas ao longo do caminho.
fonte
No Windows, quando você instala um programa, ele cria uma pasta em Arquivos de Programas que contém tudo. Possui binários, bibliotecas, arquivos de recursos, etc. No Linux, os binários geralmente entram
/usr/bin
, as bibliotecas entram/usr/lib
e os recursos entram/usr/share
. Especificamente, como um arquivo de ícone, isso entraria/usr/share/icons
. As fontes podem ser encontradas em/usr/share/fonts
. Os cabeçalhos de desenvolvimento entram/usr/include
e, por último, os arquivos de configuração entram/etc
.Esse layout tem algumas vantagens interessantes. Ao colocar bibliotecas
/usr/lib
, é muito mais fácil compartilhar bibliotecas entre aplicativos. No Windows, é típico ver cada programa instalar seu próprio conjunto de bibliotecas nos Arquivos de Programas, e outro aplicativo pode instalar a mesma biblioteca exata, agora você tem duas cópias exatas de um arquivo .dll. Ele também adiciona alguma consistência ao layout do sistema de arquivos. No Windows, você sabe que o programa terá uma pasta em Arquivos de Programas, mas não há garantia de como ele está disposto dentro dessa pasta. Talvez os executáveis estejam em umabin/
pasta, talvez não. Talvez tenha umaconf/
pasta, novamente talvez não.fonte
/bin
(de propósito geral, binários do sistema),/usr/bin
(programas do usuário, por vezes ligadas a partir de/opt
),/sbin
(binários de superusuário, ferramentas administrativas, este dir não está no usuários PATH), etc ...