Etendendo …
FHSFHS??
Palestrante:Juliana Felix
$whoamiJuliana Felix - @juh_felix
• Integrante do grupo /MNT
• Graduanda Redes – UEG
• Estagiária UFG (Cercomp)
• Linux > Debian OR Slackware
• Café ( )
c[_]
$show Agenda
Objetivo História do FHS
Informação sobre FHS
Árvore de Diretório
Conclusão Referência
Objetivo
• Saber a história do FHS
• Entender o que é FHS (Filesystem Hierarchy Standard)
• E o padrão usado nas distribuições.
História do FHS
$history FHSFHS (File System Standard Hierarchy,
Hierarquia padrão do sistema de arquivos).
No início do ano de 1996, surgiu um movimento, com o apoio da comunidade de desenvolvedores do BSD, que visava o desenvolvimento de versões do FSSTND para outros sistemas do tipo Unix, além do Linux.
$history FHSO FHS é mantido pelo Free Standards
Group (FSG), uma organização sem fins lucrativos formada por importantes empresas de hardware e software, como:
Informação sobre FHS
$info FHS
• O Linux tem como principais elementos estruturais arquivos e diretórios, onde arquivos guardam informações e diretórios são os compartimentos que podem conter arquivos e/ou subdiretórios.
• Estes arquivos e diretórios estão organizados numa estrutura hierárquica na forma de uma árvore invertida, que assim se chama porque o elemento no topo é raiz,de onde saem o “tronco” e os “galhos” que atingem os demais elementos.
$info FHS
O diretório no topo da hierarquia é o diretório raiz que é representado por “/”. Aqueles diretórios logo abaixo deles são seus filhos;
Os nomes de arquivos e diretórios são case sensitive,ou seja, diferencia maiúsculas de minúsculas.
$info FHS
$info FHSLocalização na estrutura do diretório
- pwd: mostra o diretório em que voce está.
- ls: exibi conteudo do diretório ou informaçõesde um arquivo. É possível mostrar o conteúdo de um ou vários diretórios ao mesmo tempo também.sintaxe: ls [parametro]<arquivo ou diretório>
$infocd: significa "Change selector" (troca de diretório) é
usado para trocar de diretório.
sintaxe: cd <diretório>
Exemplos: $cd /tmp (sai do atual e entra no diretório tmp).
$cd ../ (vai para um diretório acima).
$cd ~ (vai para o diretório home).
$cd - (leva de volta para o último diretório visitado).
Para mais informações sobre o comando digite:
$ man <comando>
Árvore de Diretório
$tree FHS
fonte:http://www.rayanfarmad.ir/images/stories/sistemadearquivoslinux.png
/bin
Este diretório contém a maioria dos seus comandos não privilegiados do sistema que são usados com frequência pelos usuários, como: cat, cp, ls, mkdir, pwd, rm, su, tar etc.
E também não pode ficar em uma partição separada da partição que contém o "/" (raiz).
/bin
/bootEste diretório contém arquivos
importantes para a Inicialização e carregamento do kernel.
É neste diretório que se encontra o Kernel.
Também é nesse diretório que ficam localizados os arquivos do Gerenciador de Boot (bootloader).
/dev
Contém os arquivos de dispositivos suportados pelo Linux, como floppy disk, cdrom, unidades de disco, mouse, portas paralelas e serias, etc...
Lembrando que no Linux tudo é tido como arquivo. Graças ao kernel isso é possível contando com “Arquivos Especiais” no diretório /dev. Eles são de dois tipos: Dispositivos de Bloco e Dispositivos de Caracter
/devDispositivos de bloco são geralmente
associados “armazenamento de dados”, pois tratam os dados em formato binário próprio para armazenagem e leitura posterior. Ex: discos-rígidos e disquetes.
Já os dispositivos de caractere tratam o fluxo de dados em um formato de caracteres texto. O próprio terminal texto, por exemplo, utiliza um dispositivo de caractere para interfacear com o kernel.
/dev
/devNo linux, as portas seriais e paralelas tem
uma nomenclatura diferente do MSDOS®. Veja na imagem abaixo:
/etc
Contém os arquivos e os diretórios de configuração que são específicos ao sistema atual e a maioria das configurações para os pacotes instalados. O diretório pode conter os seguintes diretórios:/etc/passwd: Base de dados dos usuários do sistema./etc/opt: Arquivos de configuração para os pacotes adicionais do sistema.
/etc
/etc/X11: Arquivos de configuração para o X11 (opcional).
/etc/sgml: Arquivos de configuração para SGML (opcional).
/etc/xml: Arquivos de configuração para XML (opcional).
DICA
É importante notar que não devem ser colocados binários no /etc.
/homeContém os diretórios de trabalho de todos
os usuários do sistema.
Neste diretório ficam informações como personalização de desktop, configuração de clientes de e-mail, etc...
O propósito principal dessa estrutura é facilitar as tarefas de backup, por exemplo.
/lib
Contêm as biblioteca compartilhadas necessárias ao carregar o sistema(boot) e para executar os comandos localizados na raiz do sistema de arquivos (residentes em /bin e /sbin).
Os módulos do Kernel também se localizam neste diretório, mais especificamente em /lib/modules/<versão do kernel>/.
/mediaPonto de montagem de dispositivos diversos do sistema (rede, pen-drives, CD-ROM em distribuições mais novas).
O /media pode conter os seguintes diretórios:• /media/floppy: disquete (opcional).• /media/cdrom: cdrom (opcional).• /media/cdrecorder: gravador de CD(opcional)
• /media/zip: drive zip (opcional).
/mntEste diretório é fornecido de modo que o
administrador de sistema possa temporariamente montar um disquete, cdrom, ou sistema de arquivos quando necessário.
O Debian cria esses diretórios (cdrom e floppy) diretamente na raiz, e os utilizam como padrão para servir como ponto de montagem à essas mídias.
/optContém pacotes instalados pelo usuário e
softwares personalizados que não são tratadas pelo gestor de sistema ou pacote.
Estes pacotes fornecidos por terceiros devem ser instalados em diretórios separados. Ex.: /opt/pacote – onde o pacote deve descrever o nome do software a ser instalado.
/procEsse diretório é ligeiramente diferente dos
comuns, pois os dados nele contidos não estão fisicamente em nenhum disco rígido do sistema, mas sim na memória ram.
Trata-se de um sistema de arquivos virtual que é criado e gerenciado pelo Kernel em tempo real, e é a forma mais direta que o usuário tem de interagir com o kernel.
/procOs arquivos nele contidos contém
basicamente valores de variáveis do kernel.
Ele esta repleto de arquivos como esses, a existência ou não da maioria deles depende de opções específicas da versão do kernel em uso no sistema. Os arquivos que costumam existir em sistemas atuais com kernel's 2.4 e 2.6 e nos trazem informações importantes.
/proc/cpuinfoNesse arquivo estão as informações sobre o processador em uso na máquina.
/proc
/rootEste é diretório home do administrador de sistema (Usuário root). Root é o único usuário interagível com o sistema (que digita comandos nele) que deve ter seu diretório de trabalho fora da pasta /home.
Isso torna possível que o usuário root acesse seus arquivos durante uma tarefa de manutenção no sistema, onde o sistema “deve” ser capaz de funcionar somente com a partição raiz acessível (montada).
/sbinContém os binários essenciais para a
inicialização, na recuperação e restauração do sistema antes que o diretório /usr esteja montado.
Estes binários são usados pelo próprio sistema ou pelo administrador (root).
/srvDiretórios para dados de serviços fornecidos pelo sistema e, cuja aplicação é de alcance geral, ou seja, os dados não são específicos de um usuário.
Ex.:
• /srv/www (servidor web),
• /srv/ftp (servidor ftp), etc.
/sysUma interface entre o kernel e o sistema,
utilizado para modificar as configurações do sistema
/tmpO diretório tmp é utilizado por alguns
programas que requerem arquivos temporários.
Recomenda-se que ao inicializar o sistema os arquivos contidos neste diretório sejam apagados.
Na distribuição Debian é automatico.
/usrÉ a segunda maior seção do sistema de
arquivos, nele estão os dados compartilháveis apenas para leitura.
Isso significa que não se deve gravar nada“manualmente” neste diretório.
Encontram-se neste diretório o gerenciador de janelas X, programas de usuários, jogos, etc...
/usrOs subdiretórios mais importantes dentro da estrutura /usr são:
DICARepare que a maioria desses diretórios dentro de /usr também existem na raiz do sistema. A diferença entre eles é que os que ficam na raiz contém dados que não podem ser compartilhados pela rede, já os que ficam em /usr sim.
/varContém arquivos de dados de variáveis.
Isto inclui diretórios e arquivos de spool, dados administrativos e logs do sistema.
O FHS define os seguintes subdiretórios:• /var/cache: cache de dados de aplicações.• /var/lib: dados de estado variável.• /var/local: dados de estado variável para
/usr/local.
• /var/lock: arquivos de lock (trava).
/var
• /var/log: arquivos de log.• /var/opt: arquivos variáveis para /opt.• /var/run: dados relevantes para os processos
em execução.• /var/spool: spool de dados para aplicações.• /var/tmp: arquivos temporários preservados
entre reinicializações do sistema.
DICA
Uma boa prática do administrador é alocar uma partição em um disco separado para receber o diretório /var.
Uiiiiiii
Por favor, tome cuidado especial ao interagir com o /boot ou /sys,pois são diretórios onde umpequeno erro pode tornar osistema instável ou incapaz deinicializar.
ReferênciasSeja Livre www.sejalivre.org/entenda-a-estrutura-de-diretorios-do-linux/Wikipédiahttp://pt.wikipedia.org/wiki/Filesystem_Hierarchy_StandardFHS – site oficialwww.pathname.com/fhs
Perguntas?http://www.twitter.com/juh_felix
Obrigada