Etendendo …
FHSFHS??
Palestrante:
Juliana Felix
$whoami
Juliana 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 FHS
FHS (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 FHS
O 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 FHS
Localização na estrutura do diretório
- pwd: mostra o diretório em que voce está.
- ls: exibi conteudo do diretório ou informações
de 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>
$info
cd: 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.rayanf
armad.ir/images/stories
/sistemadearquivoslinu
x.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
/boot
Este 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
/dev
Dispositivos 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
/dev
No 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.
/home
Conté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>/.
/media
Ponto 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).
/mnt
Este 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.
/opt
Conté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.
/proc
Esse 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.
/proc
Os 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/cpuinfo
Nesse
arquivo
estão as
informações
sobre o
processador
em uso na
máquina.
/proc
/root
Este é 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).
/sbin
Conté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).
/srv
Diretó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.
/sys
Uma interface entre o kernel e o sistema,
utilizado para modificar as configurações do
sistema
/tmp
O 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...
/usr
Os subdiretórios mais importantes dentro da
estrutura /usr são:
DICA
Repare 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.
/var
Conté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 um
pequeno erro pode tornar o
sistema instável ou incapaz de
inicializar.
Referências
Seja Livre
www.sejalivre.org/entenda-a-estrutura-de-diretorios-do-lin
ux/
Wikipédia
http://pt.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
FHS – site oficial
www.pathname.com/fhs
Perguntas?
http://www.twitter.com/juh_felix
Obrigada

Entendendo FHS - Palestra Debian Day 2013

  • 1.
  • 2.
    $whoami Juliana Felix -@juh_felix • Integrante do grupo /MNT • Graduanda Redes – UEG • Estagiária UFG (Cercomp) • Linux > Debian OR Slackware • Café ( ) c[_]
  • 3.
  • 4.
    Objetivo • Saber ahistória do FHS • Entender o que é FHS (Filesystem Hierarchy Standard) • E o padrão usado nas distribuições.
  • 6.
  • 7.
    $history FHS FHS (FileSystem 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.
  • 8.
    $history FHS O FHSé mantido pelo Free Standards Group (FSG), uma organização sem fins lucrativos formada por importantes empresas de hardware e software, como:
  • 9.
  • 10.
    $info FHS • OLinux 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.
  • 11.
    $info FHS O diretóriono 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.
  • 12.
  • 13.
    $info FHS Localização naestrutura do diretório - pwd: mostra o diretório em que voce está. - ls: exibi conteudo do diretório ou informações de 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>
  • 14.
    $info cd: significa "Changeselector" (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>
  • 15.
  • 16.
  • 17.
    /bin Este diretório contéma 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).
  • 18.
  • 19.
    /boot Este diretório contémarquivos 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).
  • 20.
    /dev Contém os arquivosde 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
  • 21.
    /dev Dispositivos de blocosã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.
  • 22.
  • 23.
    /dev No linux, asportas seriais e paralelas tem uma nomenclatura diferente do MSDOS®. Veja na imagem abaixo:
  • 24.
    /etc Contém os arquivose 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.
  • 25.
    /etc /etc/X11: Arquivos deconfiguração para o X11 (opcional). /etc/sgml: Arquivos de configuração para SGML (opcional). /etc/xml: Arquivos de configuração para XML (opcional).
  • 26.
    DICA É importante notar quenão devem ser colocados binários no /etc.
  • 27.
    /home Contém os diretóriosde 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.
  • 28.
    /lib Contêm as bibliotecacompartilhadas 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>/.
  • 29.
    /media Ponto de montagemde 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).
  • 30.
    /mnt Este 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.
  • 31.
    /opt Contém pacotes instaladospelo 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.
  • 32.
    /proc Esse 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.
  • 33.
    /proc Os arquivos nelecontidos 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.
  • 34.
  • 35.
  • 36.
    /root Este é diretóriohome 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).
  • 37.
    /sbin Contém os bináriosessenciais 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).
  • 38.
    /srv Diretórios para dadosde 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.
  • 39.
    /sys Uma interface entreo kernel e o sistema, utilizado para modificar as configurações do sistema
  • 40.
    /tmp O 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.
  • 41.
    /usr É a segundamaior 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...
  • 42.
    /usr Os subdiretórios maisimportantes dentro da estrutura /usr são:
  • 43.
    DICA Repare que amaioria 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.
  • 44.
    /var Contém arquivos dedados 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).
  • 45.
    /var • /var/log: arquivosde 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.
  • 46.
    DICA Uma boa práticado administrador é alocar uma partição em um disco separado para receber o diretório /var.
  • 47.
    Uiiiiiii Por favor, tome cuidadoespecial ao interagir com o /boot ou /sys, pois são diretórios onde um pequeno erro pode tornar o sistema instável ou incapaz de inicializar.
  • 48.
  • 49.
  • 50.