310 likes | 445 Views
- Sistema de Arquivos -. Adriano da Silva Castro Guilherme Ribeiro Morisson Túlio César Faria Pinto Wallace de Menezes Gerheim. Sistemas de Arquivos. Baseados em disco: XFS JFS ReiserFS Ext2 Ext3 Ext4 iso9660 Baseados em rede: NFS AFS SMBfs Especiais Diretório /proc
E N D
- Sistema de Arquivos - Adriano da Silva Castro Guilherme Ribeiro Morisson Túlio César Faria Pinto Wallace de Menezes Gerheim
Sistemas de Arquivos • Baseados em disco: • XFS • JFS • ReiserFS • Ext2 • Ext3 • Ext4 • iso9660 • Baseados em rede: • NFS • AFS • SMBfs • Especiais • Diretório /proc • Diretório /devfs • Diretório /ramfs
XFS • Sistema desenvolvido em 64 bits, compatível com sistemas 32 bits. • Alocação por extensões em vez de alocação por blocos; • Alocação dinâmica de nós-i; • Journaling: Registro de transações cuja finalidade é recuperar o sistema em caso de desligamento não programado.
JFS • Sistema desenvolvido pela IBM ; • Journal; • Permite que as partições do sistema sejam redimensionadas sem que seja necessário desligar o computador.
ReiserFS • Primeiro sistema de arquivos com suporte a journaling; • Tamanho de blocos variáveis, suporte a arquivos de 1 EiB (260 bytes) de tamanho e o acesso mhash à arvore de diretórios é um pouco mais rápido que o ext3.
Ext2 • Similar ao FAT32; • Cada bloco armazena um arquivo ou parte de um arquivo e existe uma tabela com os endereços de cada arquivo no disco.
Ext3 • Evolução do Ext2: totalmente compatível; • Journaling:
iso9660 • Norma internacional de armazenamento de dados que faz a descrição da estrutura de arquivos e diretórios de um CD-ROM; • /mnt/cdrom; • Conteúdo acessado normalmente como qualquer outro arquivo;
AFS • Nasceu com o intuito de prover compartilhamento de arquivos entre os 7 mil usuários da Carnegie Mellon University (EUA); • Unidade básica de tráfego: arquivo inteiro; • Callback: Quando um arquivo é aberto, é posto em cache no sistema de arquivos local e o servidor guarda essa informação. Sempre que algum outro cliente alterar o mesmo arquivo, ele é avisado via callback de que o arquivo foi alterado. Toda alteração é checada vi callback.
NFS • Compartilhamento de arquivos e diretórios entre computadores conectados em rede, formando um diretório virtual; • Acesso remoto transparente para o usuário.
SMBfs • Mapeamento de arquivos e diretórios compartilhados por servidores Windows ou SAMBA em um diretório local.
Diretório /proc • Pseudo sistema de arquivos que contém informações sobre o sistema e processos que estão sendo executados; • /proc/kcore – arquivo que contém uma cópia do conteúdo da memória do computador.
Diretório /devfs • Oferece espaço ao kernel para os dados referentes aos nomes de dispositivos, no sistema de arquivos global; • Ao invés de ter que criar e modificar os nós de dispositivos, devfs mantém este sistema de arquivos particular.
Diretório /ramfs • Mantém todos os arquivos na RAM; • Permite acesso de leitura e escrita.
Ext4 • O Ext4 apresenta inúmeros novos aprimoramentos quanto a desempenho, escalabilidade e confiabilidade. • Foi implementado por uma equipe de desenvolvedores, liderados por Theodore Tso (responsável pela manutenção do ext3) e introduzido no kernel 2.6.19. • Porém, ele vinha marcado como alpha.
Ext4 • Encontra-se agora estável no kernel 2.6.28 (desde dezembro de 2008). • É possível montar um sistema de arquivos ext4 como ext3. • No sistema ext3 o numero máximo de sub-diretórios (pastas) era de 32000. No ext4 esse numero foi duplicado, ou seja, agora é de 64000.
Ext4 • No Ext3 • uma partição de, no máximo, 32 TB (terabytes) e manipular arquivos de até 2 TB de tamanho. • No Ext4 • partições de no máximo1024 PB (petabytes) ou 1EB (exabyte) e 16TB por arquivo.
Ext4 • O Ext4 implementa a verificação de checksum do journal já que o mesmo é muito utilizado e corre sempre riscos de acabar corrompido. • Melhorias na pré-alocação: O ext4 vai permitir pré-alocação de arquivos sem marcar de zeros no Inode de arquivos, o que vai garantir uma melhoria na performance,.
Ext4 • O ext4 marca os grupos de blocos não utilizados na tabela do Inode, permitindo que o processo fsck ignore-os totalmente, para aumentar a velocidade do processo de verificação.
Ext4 • Alocação com atraso: essa otimização no desempenho atrasa a alocação dos blocos físicos no disco até que eles sejam sincronizados nele. Isso gera uma menor utilização da CPU e conseqüentemente um ganho de velocidade no sistema. • Atrasando a alocação dos blocos físicos até que estes precisem ser gravados no disco, mais blocos são apresentados para alocar e gravar nos blocos adjacentes.
Organização de Diretórios • Arquivos organizados em diretórios; • Grande árvore; • Raiz em /. • mount anexa o sistema de arquivos encontrado em um dispositivo à árvore. • Arquivos e diretórios podem ter o tamanho de até 255 caracteres.
Organização de Diretórios • Case-sensitive; • Nomes de arquivo e diretório podem conter quaisquer caracteres exceto ‘/’. • Cada arquivo ou diretório é designado por um nome de arquivo totalmente qualificado, nome de arquivo absoluto, ou um caminho. • Estrutura i-node.
Curingas • "*" – nome completo/restante; • "?" – letra na posição; • [padrão] – faixa de caracteres, por exemplo: • [a-z][0-9]; • [a,z][1,0]. • {padrões} – strings para pesquisa de padrões de um arquivo/diretório, por exemplo: • X{ab,01} - Faz referência a seqüencia de caracteres Xab ou X01
Permissões de acesso • Categorias: • Usuário • Grupo • Outros Usuários • Ações: • Ler • Escrever • Executar
Arquivo: • Ler: Examinar o conteúdo • Escrever: Modificar • Executar: Executar com comando • Diretório • Ler: Listar conteúdo • Escrever: Adicionar ou remover arquivos • Executar: Acessar arquivos
Tipos de Arquivos • -: arquivo normal • d: diretório • l: ligação simbólica • c: nó de dispositivo caracter • b: nó de dispositivo bloco • p: pipe nomeada • s: soquete
Outras Informações • Permissões • Número de links diretos • Usuário • Grupo • Tamanho • Data e Hora • Nome -rw-r--r-- 1 root root 1051 Jan 26 08:29 /etc/passwd crw-rw---- 1 root dip 108, 0 Jan 18 13:32 /dev/ppp
Permissões especiais • s • Dono: ajusta a identificação efetiva do usuário do processo durante a execução de um programa (setuid). • Grupo: ajusta a identificação efetiva do grupo do processo durante a execução de um programa (setgid). • S • Significa que não existe a permissão "x“ naquele diretório. • t • Salva a imagem do texto do programa no dispositivo swap. • T • Significa que não existe a permissão "x" naquele diretório. • X • a permissão de execução somente é afetada se o arquivo já tiver permissões de execução
Alguns comandos para manipulação de arquivos • cat : mostra o conteúdo de um arquivo binário ou texto • tac : semelhante ao cat mas inverte a ordem • tail: mostra as últimas 10 linhas de um arquivo (util para ler logs) • head : mostra as primeiras 10 linhas de um arquivo • less : mostra o conteúdo de um arquivo de texto com controle • rm : remoção de arquivos (também remove diretórios) • mv : move ou renomeia arquivos e diretórios • chmod altera as permissões de arquivos ou diretórios • chown altera o dono de arquivos ou diretórios
Referências • http://www.vivaolinux.com.br/artigo/Sistemas-de-arquivos-EXT3-e-ReiserFS-no-GNU-Linux?pagina=2 • http://www.infowester.com/linext3.php • http://linuxgazette.net/102/piszcz.html • http://www.debian.org/doc/manuals/reference/ch-tutorial.pt-br.html#s-file-system • http://focalinux.cipsga.org.br/guia/inic_interm/index.html • http://www.ibm.com/developerworks/br/library/l-anatomy-ext4/index.html