Como os diretórios são estruturados no GNU / Linux?

Pastas Linux

Muitos de nós aprendemos a usar nosso computador graças a alguma versão do Windows. Uma das primeiras habilidades que eles nos ensinam (ou pelo menos foi assim que aconteceu comigo) é gerenciar nossas informações contidas em nosso equipamento, seja no disco rígido ou em mídia removível (ainda me lembro de meus professores fazendo exames sobre como mover, copiar, criar, organizar e localizar arquivos e pastas dentro do sistema, esses caras realmente se complicaram com o gerenciador de arquivos do Win 3.1 XD).

Desta vez, veremos como o hierarquia de diretório em GNU / Linux. É verdade que não é extremamente necessário conhecê-lo 100%, mas acredite que tornará a sua vida muito mais fácil ter uma ideia dele;).

Pretendo este artigo servir ao duplo propósito de ser um guia de acesso rápido, além de ser um guia de referência para referência futura. Por isso, a informação que, acredito, é mais "Especializado" é em uma cor mais suave para tentar facilitar a leitura rápida.

Estrutura geral dos diretórios

No sistema de arquivos UNIX (e semelhantes, como GNU / Linux), existem várias sub-hierarquias de diretórios que possuem funções de armazenamento e organização múltiplas e diferentes em todo o sistema. Esses diretórios podem ser classificados em:

<° Estático: Contém arquivos que não mudam sem a intervenção do administrador (root), porém, podem ser lidos por qualquer outro usuário. (/ bin, / sbin, / opt, / Bota, / usr / bin...)

<° Dinâmico: Ele contém arquivos que podem ser alterados e lidos e gravados (alguns apenas por seus respectivos usuários e root). Eles contêm configurações, documentos, etc. (/ var / mail, / var / spool, / var / run, / var / lock, / Home...)

<° Compartilhado: Ele contém arquivos que podem ser encontrados em um computador e usados ​​em outro, ou mesmo compartilhados entre usuários.

<° Restrito: Ele contém arquivos que não podem ser compartilhados, eles só podem ser modificados pelo administrador. (/ Etc, / Bota, / var / run, / var / lock...)

raiz: é o nome convencional da conta do usuário que possui todos os direitos em todos os modos (único ou multiusuário). O root também é chamado de superusuário. Normalmente, esta é a conta do administrador. O usuário root pode fazer muitas coisas que um usuário comum não pode, como alterar os proprietários de arquivos ou permissões e vincular-se a portas de pequeno número. Não é recomendado usar o usuário root para uma sessão simples de uso regular, já que coloca o sistema em risco ao garantir acesso privilegiado a cada programa em execução. É preferível usar uma conta de usuário normal e usar o comando su para acessar os privilégios de root, se necessário.

Esta estrutura é representada em forma de árvore, conforme a imagem a seguir:

árvore de diretório

onde a raiz da árvore/) é a base de toda a estrutura de diretório e ramos (diretórios e arquivos) se levantar ou pendurar na referida base.

 Estrutura da árvore de diretórios no GNU / Linux

Algumas distribuições do Linux fazem modificações na estrutura da árvore de diretórios para atender às suas próprias necessidades. De qualquer forma, o padrão é o seguinte:

arquivos de hierarquia

É assim que parece no meu computador (mesmo nas imagens da área de trabalho eu reflito meu espírito XD metal):

Sistema de arquivos

Chega de desvios e vamos mergulhar no assunto ...

Descrição do eestrutura de árvore de diretório

Raiz

 

<° / (raiz): Semelhante ao diretório raiz "C: \”Dos sistemas operacionais DOS e Windows. É o nível mais alto dentro da hierarquia de diretórios, é o recipiente para todo o sistema (acesso ao sistema de arquivos, incluindo discos removíveis [CD's, DVDs, pen drives, etc.]).

caixa

<° / bin (binário): Binários são executáveis ​​Linux (semelhantes a arquivos .exe Janelas). Aqui teremos os executáveis ​​dos programas do próprio sistema operacional.

bota

<° / boot (boot): Aqui encontramos os arquivos necessários para iniciar o Linux, a partir dos arquivos de configuração do carregador de inicialização (larva - Lilo), mesmo o seu núcleo sistema.

Carregador de inicialização: é um programa simples (que não possui todas as funcionalidades de um sistema operacional) projetado exclusivamente para preparar tudo que o sistema operacional precisa para funcionar.

Núcleo ou kernel: o software é a parte mais importante do sistema operacional. É o principal responsável por dotar os diferentes programas de acesso seguro ao hardware do computador ou de forma básica, é responsável pela gestão dos recursos, através dos serviços de chamadas ao sistema.

dev

<° / dev (dispositivos): Esta pasta contém dispositivos do sistema, mesmo aqueles que não foram atribuídos (montados) um diretório, por exemplo, microfones, impressoras, pen drives (pendrives) e dispositivos especiais (por exemplo, / dev / null) O Linux trata os dispositivos como se fossem apenas mais um arquivo para facilitar o fluxo de informações.

/ dev / null ou dispositivo nulo (periférico nulo): é um arquivo especial que descarta todas as informações nele gravadas ou redirecionadas. Por sua vez, não fornece nenhum dado a nenhum processo que tente ler dele, simplesmente retornando um EOF ou fim de arquivo. A forma mais comumente usada é por redirecionamento, uma vez que / dev / null é um arquivo especial e não um diretório; portanto, você não pode mover (mv) ou copiar (cp) arquivos dentro.

etc.

<° / etc (etc.): Os arquivos de configuração dos programas instalados são armazenados aqui, bem como alguns scripts que são executados na inicialização do sistema. Os valores destes arquivos de configuração podem ser complementados ou substituídos pelos arquivos de configuração do usuário que cada um possui em seu respectivo "home" (pasta pessoal).

  • / etc / opt / Arquivos de configuração para programas hospedados no diretório / opt.
  • / etc / X11 / Arquivos de configuração para o X Window System, versão 11.

X: É responsável por exibir as informações gráficas de forma totalmente independente do sistema operacional.

  • / etc / sgml / Arquivos de configuração para SGML.

A linguagem SGML: Consiste em um sistema de organização e rotulagem de documentos. É usado para especificar as regras de marcação de documentos e não impõe nenhum conjunto de marcações especial.

  • / etc / xml / Arquivos de configuração para XML.

XML: É uma tag metalinguagem extensível desenvolvida pelo World Wide Web Consortium (W3C). É uma simplificação e adaptação do SGML. É mais fácil de implementar, pois evita alguns recursos SGML avançados.

Início

<° / casa (casa): Aqui estão os arquivos de configuração do usuário, bem como os arquivos pessoais do usuário (documentos, músicas, vídeos, etc.), com exceção do superusuário (administrador, root), que possui um diretório separado. Semelhante a "Meus Documentos" no Windows.

lib

<° / lib (bibliotecas): Ele contém as bibliotecas compartilhadas essenciais (pobremente conhecidas como bibliotecas) dos programas hospedados, ou seja, para os binários em / bin / y / sbin /, as bibliotecas do kernel, bem como módulos e drivers.

imprensa

<° / média (média / médias): Ele contém os pontos de montagem da mídia de armazenamento removível, como leitores de CD-ROM, pendrives (memória USB), e ainda serve para montar outras partições do mesmo disco rígido, como uma partição que é usada por outro sistema operacional.

mnt

<° / mnt (montagens): Este diretório é normalmente usado para montagens temporárias de unidade. É um diretório semelhante a / media, mas é usado principalmente pelos usuários. É usado para montar temporariamente discos rígidos e partições no sistema; você não precisa de uma senha, ao contrário do diretório / media.

optar

<° / opt (opcional): Ele contém pacotes de programas opcionais para aplicativos estáticos, ou seja, podem ser compartilhados entre usuários. Esses aplicativos não salvam suas configurações neste diretório; Desta forma, cada usuário pode ter uma configuração diferente do mesmo aplicativo, de forma que o aplicativo seja compartilhado, mas não as configurações do usuário, que são salvas em seu respectivo diretório no / Home.

proc

<° / proc (processos): Ele contém principalmente arquivos de texto, sistemas de arquivos virtuais que documentam o kernel e o status dos processos em arquivos de texto (por exemplo, tempo de atividade, rede).

raiz

<° / root (administrador): É a / home do administrador (somente para ele). É o único / Home que não está incluído -por padrão- no diretório mencionado.

sbin

<° / sbin (binários do sistema): Sistema binário especial, comandos e programas exclusivos para o superusuário (root), por exemplo init, route, ifup, como mount, umount, shutdown). Um usuário pode executar qualquer um desses aplicativos de comando, se tiver permissões suficientes ou se tiver a senha de superusuário.

srv

<° / srv (serviços): Informações do sistema sobre alguns serviços que oferece (FTP, HTTP ...).

tmp

<° / tmp (temporário): É um diretório onde os arquivos temporários são armazenados (por exemplo: pelo navegador da Internet). Sempre que o sistema é iniciado, este diretório é limpo.

usr

<° / usr (usuários): Hierarquia secundária de dados do usuário; contém a maioria dos utilitários e aplicativos multiusuário, ou seja, acessíveis a todos os usuários. Em outras palavras, ele contém os arquivos que são compartilhados, mas são somente leitura. Esse diretório pode até ser compartilhado com outros computadores na rede local.

  • / usr / bin: Conjunto de executáveis ​​(não administrativos para todos os usuários) da maioria dos aplicativos de desktop, entre outros (por exemplo firefox) Eles são somente leitura, mas podem ter suas próprias configurações para cada usuário em / home. Alguns executáveis ​​compartilham as mesmas bibliotecas que outros aplicativos compartilham, portanto, geralmente não há duas bibliotecas idênticas no mesmo sistema, o que economiza memória e fornece mais ordem.
  • / usr / include: Os arquivos de cabeçalho para C e C ++.
  • / usr / lib: Bibliotecas para C e C ++.
  • / usr / local: É outro nível dentro que oferece uma hierarquia semelhante ao próprio diretório / usr.
  • / usr / sbin: Sistema binário não essencial; por exemplo, daemons para vários serviços de rede. Ou seja, ele contém programas que não fornecem uma interface de usuário e geralmente são executados na inicialização do sistema ou em certas circunstâncias. Eles não são gerenciados diretamente pelo usuário enquanto estão em execução, embora possam ser configurados antes de serem executados.
  • / Usr / share: Arquivos compartilhados, como arquivos de configuração, imagens, ícones, temas, etc.
  • / usr / src: Códigos-fonte de alguns aplicativos e do kernel Linux. Assim como / mnt, esta pasta é gerenciada diretamente pelos usuários para que possam salvar o código-fonte dos programas e bibliotecas nela e, assim, acessá-la facilmente, sem problemas com permissões. Permite que o código-fonte tenha um espaço próprio, acessível mas longe de todos os usuários.
  • / usr / X11R6 / X Window System, Versão 11, Release 6. Este diretório está relacionado ao ambiente gráfico.

var

 

<° / var (variáveis): Arquivos variáveis, como logs, arquivos de spool, bancos de dados, arquivos temporários de e-mail e alguns arquivos temporários em geral. Geralmente atua como um registro do sistema. Ajude a encontrar as origens de um problema.

  • / var / cache: Cache de aplicativos, embora o diretório / tmp também seja usado para o mesmo.
  • / var / crash / São depositados dados e informações referentes a travamentos ou erros do sistema operacional. É mais específico do que / var em geral.
  • / var / games / Dados variáveis ​​de jogos de sistema. Este diretório não é essencial e muitas vezes é omitido pelos próprios aplicativos do jogo, já que eles usam a pasta do usuário em / Home para salvar dados variáveis ​​como configurações, por exemplo. De qualquer forma, os jogos gnome usam este diretório.
  • / var / lib: Informações sobre o estado atual dos aplicativos, modificáveis ​​pelos próprios aplicativos.
  • / var / lock: Arquivos que garantem que um recurso seja utilizado apenas por um determinado aplicativo que solicitou sua exclusividade, até que seja liberado.
  • / var / log: É um dos subdiretórios mais importantes, pois todos os tipos de logs do sistema são armazenados aqui.
  • / var / mail: Caixa de correio ou mensagens de usuários. Se você não usar criptografia, a pasta pessoal geralmente será usada para o mesmo trabalho por programas que gerenciam e-mails.
  • / var / opt: Dados usados ​​por pacotes armazenados em / opt.
  • / var / run: Informações recentes. Trata do funcionamento do sistema desde a última inicialização. Por exemplo, os usuários atualmente registrados ou logados, que entraram; e os demônios que estão correndo.
  • / var / spool: Tarefas aguardando processamento (por exemplo, filas de impressão e mensagens não lidas).
  • / var / tmp: Arquivos temporários que, ao contrário / TmpEles não são apagados entre as sessões ou reinicializações do sistema, mas são dispensáveis.

<° / sys (sistema): Contém parâmetros de configuração do sistema em execução. Dados referentes ao kernel, barramento, dispositivos, firmware, fs (sistema de arquivos) e outros.

<° / perdido + encontrado: Em sistemas Unix, cada uma das partições / sistemas de arquivos tem um diretório chamado / lost + found em que arquivos e diretórios (ou restos deles) recuperados após uma revisão do sistema de arquivos por meio da ferramenta fsck são armazenados, tudo isso geralmente causado por travamentos do sistema, desligamentos forçados do computador, quedas de energia, etc.

Todos esses arquivos e diretórios recuperados após um fsck são armazenados com a seguinte estrutura no diretório / lost + found, o nome de cada arquivo é o número do inode:

drwxr-xr-x 3 root root 4096 2010-03-12 09:38 # 123805
drwxr-xr-x 3 root root 4096 2010-03-12 09:38 # 125488
drwxr-xr-x 3 root root 4096 2010-03-12 09:38 # 135836
-rw-r - r– 2 root root 2473 2010-03-02 16:03 # 137864
-rw-r - r– 2 root root 18505 2010-03-02 16:03 # 137865
-rw-r - r– 2 root root 56140 2010-03-02 16:03 # 137866
-rw-r - r– 2 root root 25978 2010-03-02 16:03 # 137867
-rw-r - r– 2 root root 16247 2010-03-02 16:03 # 137868
-rw-r - r– 2 root root 138001 2010-03-02 16:03 # 137869
-rw-r - r– 2 root root 63623 2010-03-02 16:03 # 137870
-rw-r - r– 2 root root 34032 2010-03-02 16:03 # 137871
-rw-r - r– 2 root root 2536 2010-03-02 16:03 # 137872

Esses arquivos podem estar corrompidos ou incompletos, mas podemos ter sorte e encontrar o que pensávamos ter sido perdido após o fsck. Teremos que revisar os arquivos e diretórios um por um, porque o nome do arquivo foi perdido. Pode ser uma tarefa difícil percorrer todos os arquivos e diretórios e tentar colocá-los de volta em seus lugares; em alguns casos, pode ser praticamente impossível.

fsck (verificação do sistema de arquivos ou verificação de consistência do sistema de arquivos): é um utilitário que tem como função solucionar inconsistências no sistema de arquivos, já que corrige possíveis erros no sistema. O fsck é executado automaticamente na inicialização do sistema em caso de falha, mas também pode ser usado manualmente pelo administrador do sistema para forçar uma verificação.

Então você sabe, estude bem, que amanhã tem exame XD ...

Fontes:

Wikipedia

http://tuxpepino.wordpress.com/2008/01/09/jerarquia-directorios-gnulinux/


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   David Segura M. dito

    Muito útil para descobrir um pouco mais detalhadamente como é a organização Linux, obrigado!

    1.    jose dito

      Você pode me ajudar em quais pastas as senhas dos usuários são armazenadas no Ubuntu

      1.    Joaquin JH dito

        / etc / shadow
        mas as senhas mostradas aparecerão criptografadas

  2.   adequado dito

    wooooow !!
    Excelente trabalho @Perseo

  3.   Nerjamartin dito

    Parabéns Perseus, ótimo trabalho !! 🙂

  4.   Oscar dito

    Excelente tutorial, seria muito bom, dentro das suas possibilidades, colocá-lo em PDF dentro do fórum de Tutoriais. +1.

    1.    David Segura M. dito

      Você sempre pode usar http://www.printerfriendly.com por isso

  5.   Marco dito

    +10 !!!! Fabuloso, acabei de adicionar o item aos meus favoritos. explicação clara da estrutura do Linux. Eu não sabia muitas dessas coisas !!!!

    1.    elav <° Linux dito

      Perseus é verdade. Excelente artigo 😀

    2.    KZKG ^ Gaara dito

      Honestamente, também aprendi muito com este artigo ... incrível como é bem explicado, Perseu ele realmente tem um dom para isso O_O

      1.    Coragem dito

        Já está claro

  6.   elétron 22 dito

    Excelente, muito obrigado 😀

  7.   Perseu dito

    Obrigado a todos por seus comentários 😀

    1.    elétron 22 dito

      Você não pode fazer um PDF, esta informação deve ser compartilhada 😀

      1.    Perseu dito

        Claro que sim, dê-me um pouco de espaço (tenho recebido alguns trabalhos ultimamente: D) e terei todo o prazer em fazê-lo 😉

        1.    elétron 22 dito

          Eu estarei pendente 😀

  8.   Chango dito

    A explicação é excelente. Artigo muito bom.

  9.   Yoyo dito

    Imbatível 😉

  10.   Carlos-Xfce dito

    Muito obrigado por este artigo, Perseus. Esse tipo de informação enriquece muito o blog, pois não se trata apenas de novidades ou de mostrar como configurar algo, mas de aprender mais sobre nosso sistema operacional. Sem dúvida agora eu sei um pouco mais sobre coisas que sempre quis saber quando me deparava com aqueles arquivos "desonestos" que não me deixavam fazer alterações porque eu não era "root", ha ha ha.

    1.    Perseu dito

      Muito obrigado por comentar amigo, vamos tentar continuar melhorando: D.

      PS: Desculpe pela demora, mas estou testando outras distros 😉 para o meu computador.

  11.   passageiro dito

    Você conhece um comando que força um aplicativo fora do sistema a se instalar no opt em vez de no sistema de arquivos?

  12.   Arturo Molina dito

    Está muito bem explicado, finalmente entendi porque quando usei o live cd do Slax, baseado no Slackware, montei as coisas no mnt e não na mídia. Saudações.

  13.   wibort dito

    Excelente artigo, muito completo, obrigado pela contribuição.

    Pdta. Regras da Sonata! 😛

  14.   Roy dito

    Muito bom. Obrigado pelo investimento.

  15.   jeodrih dito

    Artigo muito bom, muito obrigado pela informação!

  16.   aço jerônimo dito

    Olá, é possível baixar este guia em pdf ou doc ​​para imprimir para que eu possa lê-lo com calma em qualquer lugar, se possível me passa o link, tchau muito obrigado

    1.    KZKG ^ Gaara dito

      Olá.
      Você pode imprimir diretamente pelo mesmo navegador ou pode salvar esta página (Arquivo-Salvar) e depois imprimi-la em casa.

      Espero ter ajudado você 😉
      Saudações e bem-vindo ao blog.

  17.   Benybarba dito

    a verdade é a melhor bem documentada e resumida que vi parabéns ao criador deste artigo

  18.   oscar dito

    Obrigado pela contribuição !!! É útil para mim descobrir o que está acontecendo!

  19.   lata dito

    O diretório / dev / está cheio de arquivos, que apontam para dispositivos "não drives" (porta serial, paralelo, drives de disco físico ou virtual ... blá, blá, blá) quanto ao resto, muito bom!

  20.   Belen dito

    Olá, muito bem, a todos vocês, por recomendação de um amigo vim a este lindo site e aprender mais sobre Linux, ainda tenho muitas dúvidas é que acho que já estou acostumado a usar windows, mas quando vi o do meu amigo computador Fiquei surpreso e gostaria de saber mais.

    Galera sabe que no windows tem partições lógicas (disco C, disco D) no Linux como posso fazer isso porque olha no windows se acontecesse alguma coisa apaguei o C e através de um backup que salvei na DI consegui recuperar no Linux Não sei como estou totalmente perdida.

    Bem, espero que me ajude por favor, gosto do Linux e gostaria que você me ajudasse.

    Tchau

    1.    elav. dito

      Olá Belen:

      Bem, a primeira e fundamental coisa é querer aprender e, aparentemente, você tem isso de sobra. Meu conselho é que você comece a ler este artigo e os links que você pode encontrar nele.

      No entanto, para fazer o mesmo que no Windows a coisa é relativamente fácil, basta separar a partição para o / Home. Mas como eu estava dizendo, se você não tem ideia do Sistema de Arquivos GNU / Linux, Acho que você deveria começar com esse artigo 😉

      1.    Belen dito

        Muito obrigado, bom você sabe pelo que pude ler, acabei de descobrir que são distribuições, estou gostando muito do kubuntu, vi outros mas o nome parece bom> .. <vou começar a tomar o meu primeiro etapas 🙂 obrigado repetidamente, vou comentar sobre como estou me saindo com o Linux.

        Tchau 🙂

        1.    elav. dito

          Muito boa escolha ^ _ ^

  21.   konzentrix dito

    Muito bom tutorial, sim senhor. Mostra que você resolveu. Para aqueles que não entendem muito, será de grande ajuda e para aqueles de nós que estão mais posicionados serve como um bom e agradável lembrete de leitura.

  22.   Goku dito

    Bom dia gostei muito do seu artigo. Tenho uma dúvida:
    Como posso salvar arquivos no diretório raiz? É que / home já está cheio e quero saber se o diretório / pode ser usado para ter mais espaço, há mais de 20 Gb que quero aproveitar. Eu não gostaria de ter que redimensionar as partições. Obrigado pela ajuda.

  23.   Rodolfo dito

    Artigo muito bom, parabéns e continue assim, eu te sigo e não esqueço que eu sempre convido você a conhecer BSD (sistema operacional)

  24.   Samuel dito

    Excelente trabalho, muito bem explicado. Obrigado…!

  25.   Portaro dito

    Muito bom do mais completo que li até hoje.

    Saudações.

  26.   Jose dito

    Olá, pergunto em que consiste o número de usuário do Linux e já o vi em diversos sites da internet. Agradecemos antecipadamente pela sua resposta.

  27.   Alexandra Diel dito

    Brilhante!! Tenho Huayra instalado na rede da minha escola e eles são melhores que o Windows. A informação foi muito útil para mim. Obrigado por compartilhar!!

  28.   Simon Valdes dito

    Obrigado, excelente trabalho, isso tirou muitas dúvidas e me ajudou a facilitar o ensino para o mundo Linux.

  29.   Nicolas dito

    Olá, tenho um ultra com disco híbrido e gostaria de instalar tudo relacionado ao inicio na parte ssd, estava procurando e não encontrei algo específico mas esta nota http://www.linux-es.org/node/112 pelo que eu pude adivinhar a princípio, eles teriam que ser os diretórios / bin /, / boot / e / dev /.
    O que opinam? Saudações!

  30.   VMS dito

    Muito bom, a verdade é triste que a maioria de nós não conhecia esse tipo de coisa, ainda mais, tendo usado linux por tanto tempo. O mais triste de tudo é que em cinco minutos terei esquecido de tudo. Mas ler isso tem sido muito bom para mim. Estava pensando em usar dois discos para a mesma distribuição e é por isso que procuro esse tipo de informação. Este guia é legal.

  31.   MIGUEL SÁNCHEZ TRONCOSO dito

    Excelente artigo, muito completo.

    De agora em diante eu sigo seu blog

  32.   L3x dito

    Olá a todos. Preciso saber como fazer com que as informações de ajuda de um aplicativo QT (C ++) sejam reconhecidas pelo comando man. Alguém sabe onde estão os arquivos associados aos comandos do linux ???? Desde já, obrigado.

  33.   Rollers dito

    Muito útil obrigado

  34.   Rollers dito

    Minha dúvida é, no DOS, para copiar ou mover eu uso c: como root e bem o destino o caminho de c: \ e quem não sabe por onde começar ???? '

  35.   Matias dito

    Muito boa contribuição, nunca comento muito no blog e tal, mas o seu trabalho tem sido ótimo, tenho lido em todos os lugares e estudo muito ... mas isso apenas colocou tudo no seu devido lugar e acho que esse teste vai ser um emoção tremenda.

  36.   Enrique dito

    Excelente contribuição. Muito obrigado pela informação!.