Sistemas de arquivos

Material de apoio – Instalação e configuração de sistemas operacionais de redes Linux.

  • Sistemas de Arquivos
  • Tipos de Sistemas de Arquivos ext2, ext3, ext4, reiserfs, xfs

Anúncios

Configurando quota em disco no Linux – p1

Nos próximos posts vou falar sobre quotas em disco. A vantagem das quotas está no controle do espaço em disco. Se você possui um HD não particionado, não tem esse controle… os usuários vão gravando, gravando até que um dia o espaço acaba. Tudo bem, hoje em dia o tamanho dos HDs aumentou e o preço caiu bastante; mas ainda assim é importante manter o controle quanto ao uso do espaço em disco.

Antes de colocar a mão na massa, achei legal fazer um checklist do que vamos fazer para implementar quotas, depois abaixo vou colocando mais detalhes:

1) Saber qual a versão do kernel para checar se este tem suporte a quota e aplicar a versão correta da mesma;

2) Saber o filesystem utilizado e se este possui suporte nativo a quota ou precisa aplicar algum patch, ou depende da instalação de algum pacote para funcionar;

3) Definir qual partição será aplicada quota;

4) Editar o arquivo /etc/fstab para indicar que a partição irá usar quota;

5) Criar os arquivos de gerenciamento de quota;

6) Instalar o pacote quota;

7) Habilitar módulos se necessário;

8) Remontar a partição onde foi aplicado quota;

9) Definir as quotas para os usuários;

10) Testar 😀 .

Checklist na mão, é importante dizer que atualmente, existem duas versões de quotas:

✔ quota_v1 (vfsold) – utilizada somente no  kernel da série 2.4

✔ quota_v2 (vfsv0) – utilizada no kernel da série 2.6

Aliás, o kernel 2.6 traz as duas versões (quota_v1 e quota_v2); o administrador escolhe qual versão deseja utilizar e habilita o módulo no kernel.

Além da questão do kernel, é importante falar que a principal diferença entre as versões de quota, são os arquivos criados para gerenciar a quota na partição.

Se você optar por usar quota_v1, os arquivos de gerenciamento são o quota.user e quota.group; se optar por usar quota_v2, os arquivos são aquota.user e aquota.group.

Uma vantagem de se usar quota_v2 é que esta versão checa os arquivos de dados de quota corrompidos e trabalha mais rápido mesmo em grandes partições.

Na LPI costuma cair perguntas sobre quotas e com certeza esses arquivos são uma pegadinha… é bom ficar atento aos nomes e às versões de quota para não errar na prova 😉 !

O meu kernel é 2.6, então vou trabalhar com quota_v2; lembrando que o comando para checar a versão do kernel é o uname:

# uname  -r
2.6.26-2-686

Também é bom saber é que o sistema de quotas é uma funcionalidade que deve ser suportada pelo filesystem e pelo kernel; ou seja… para que você possa aplicar quota em uma partição, tanto o sistema de arquivos dela (ext3, reiserfs, xfs, etc) quanto o kernel devem oferecer esse suporte.

Então, antes de sair limitando o quanto um usuário pode escrever em disco, é boa idéia verificar o filesystem da partição. Isso pode ser verificado com o comando mount:

# mount
/dev/sda6 on /home type ext3 (rw)

No meu caso, o filesystem é o ext3… ele possui suporte a quotas – humm… eu não achei o site oficial do ext3 listando todas as features incluindo quotas… mas tem uma apresentação do Dr. Stephen Tweedie que fala sobre o suporte a quotas no ext3 – então significa que posso aplicar quotas ai!

E para saber se o kernel possui suporte a quota:

# grep CONFIG_QUOTA /boot/config-2.6.26-2-686
CONFIG_QUOTA=y

Lembrando que se a opção não estiver habilitada, a solução é recompilar o kernel para oferecer suporte a quota!

Um outro filesystem que também permite aplicar quotas é o ReiserFS; o serviço não vem como padrão, para ter o suporte é necessário aplicar um patch. Depois que aplicar o patch, os procedimentos para instalação e configuração de quotas é o mesmo que está sendo descrito para o ext3.

Vamos definir também em qual partição será aplicado a quota. Com um HD particionado, estamos limitando o usuário escrever somente até o tamanho da partição; configurando quotas, garantimos também que o espaço não seja ocupado por apenas um usuário.

Podemos configurar quota para qualquer partição, mas como estamos falando de usuários, o ideal é que a quota seja aplicado na partição /home.

No próximo post, continuo a falar sobre quota em um HD particionado.

Até lá 😉 !

Sistema de Arquivos

O Sistema de Arquivos é criado durante a formatação do disco (HD) ou partição (um pedaço do HD), e seu propósito é criar uma estrutura para leitura e gravação de arquivos e diretórios para o sistema operacional utilizar.

Dentre as diversas opções se destacam: EXT2, EXT3, Reiserfs (Linux) – FAT, FAT16, FAT32, NTFS (Windows).

Não conseguimos instalar o Sistema Operacional se antes não formatarmos o HD com o Sistema de Arquivos que ele saiba entender.

Tipos de Sistema de Arquivos

Sistema de arquivos ext2

O ext2 é um sistema de arquivos antigo e considerado o filesystem original do Linux. Como ele não possui o recurso de journaling*, as checagens nesse filesystem pode demorar bastante.

Journaling* – técnica implementada no sistema de arquivos onde, caso haja queda de energia, a checagem de erros na partição é feita mais rapidamente.

Sistema de arquivos ext3

O ext3 é a versão do ext2 com journaling, que proporciona uma recuperação muito mais rápida, fazendo com que o ext3 seja considerado um sistema de arquivos bom e confiável.

O filesystem ext3 foi escrito pelo Dr Stephen C. Tweedie para o kernel da série 2.2.
Foi portado para o kernel da série 2.4 por Peter Braam, Andreas Dilger e Andrew Morton, com o auxílio de Stephen Tweedie.

Sistema de arquivos reiserfs

O reiserfs é um sistema de arquivos com uma performance muito boa, que supera o ext2 e o ext3 em termos de desempenho (10-15 vezes) quando se trata de arquivos pequenos (abaixo de 4k); recomendado para uso geral e casos de sistemas de arquivos grandes, com utilização de arquivos pequenos, ou ainda, diretórios com dezenas de milhares de arquivos.

Uma desvantagem desse sistema de arquivos, é que ele não possui suporte a quotas para limitar uso do espaço em disco (para que isso seja possível, é necessário aplicar um patch (correção) no kernel).

Ah, uma curiosidade. O criador do reiserfs, Hans Reiser, foi condenado pelo assassinato de sua esposa, Nina Reiser. Apesar disso, o desenvolvimento do reiserfs4 continua.

Sistema de arquivos xfs

O xfs é um filesystem com journaling, que possui muitas funções interessantes. Ele é recomendado para utilização em sistemas com hd scsi e fibra óptica. Como o xfs faz cache dos dados na memória, se utilizado com programas que não sincronizam os dados da memória no disco, caso haja queda de energia durante a escrita, os dados podem ser perdidos. Nesse caso, o xfs, é recomendado ser utilizado em sistemas que possuam no-breaks.

Qual o melhor sistema de arquivos para utilizar?

De acordo com pesquisa realizada pela revista Linux Magazine (Edição de Setembro/2004), à exceção do ext3, os sistemas de arquivos com journaling são tecnicamente bem semelhantes. Como um sistema de arquivos ext2 pode ser facilmente convertido em um ext3, e este, é compatível com o ext2 deverá ser a primeira escolha para muitos.

Quem precisa de confiabilidade e alta performance, deve optar pelo xfs, sendo que a utilização do reseirfs está indicada para casos em que muitos arquivos pequenos devem ser manipulados pelo sistema.

Referências

ReiserFS – Wikipedia

Revista Linux Magazine – Edição nº2
Sistemas de Arquivos – Autor: Jan Kleinert

Manual Completo do Linux – Guia do Administrador
Autor: Evi Nemeth, Garth Snyder, Trent R. Hein
Editora: Pearson Books