Configuração inicial

Para que o Quota funcione, é necessário instalar os pacotes “quota” e “quotatool“, que contém um conjunto de utilitários usados para configurar e verificar as quotas de disco. No Debian,
os dois podem ser instalados via apt-get:

# apt-get install quota
# apt-get install quotatool

No Fedora, você precisa apenas instalar o pacote “quota” usando o Yum:

# yum install quota

Em seguida, é necessário carregar o módulo “quota_v2“, que ativa o suporte necessário no Kernel:

# modprobe quota_v2

Para que ele seja carregado automaticamente durante o boot, adicione a linha “quota_v2” no final do arquivo “/etc/modules“, ou adicione o próprio comando “modprobe quota_v2” no final do
arquivo “/etc/rc.d/rc.local” ou “/etc/init.d/bootmisc.sh” (esse passo não é necessário no Fedora Core 5, onde o suporte a Quota vem compilado no executável principal do Kernel).

Com o módulo carregado, o primeiro passo da configuração é alterar a entrada no fstab que monta a partição, de modo que o suporte a quotas de disco seja ativado. Abra o arquivo “/etc/fstab”, localize a linha referente à
partição e adicione os parâmetros “usrquota,grpquota” logo após o “defaults”. Se você está ativando o Quota para a partição “/home”, a linha seria parecida com:

/dev/hda2 /home ext3 defaults 0 2

Depois da alteração, a linha ficaria:

/dev/hda2 /home ext3 defaults,usrquota,grpquota 0 2

Ao usar uma partição formatada em ReiserFs, a linha ficaria:

/dev/hda2 /home reiserfs defaults,usrquota,grpquota 0 2
Se o diretório home (ou qualquer outro diretório onde você deseja aplicar as quotas) faz parte do diretório raiz e você deseja primeiro migrá-lo para uma partição separada, o processo é o seguinte:

a) Instale o novo HD, particione-o e formate a partição de destino.

b) Monte a partição de destino em um diretório temporário usando o comando mount, como em:

# mount /dev/sdb2 /mnt/sdb2

c) Certifique-se de que nenhum usuário ou processo está usando o servidor. Se necessário reinicie a máquina e desconecte-a da rede.

d) Copie todos os arquivos do diretório atual para o raiz da nova partição, usando o comando “cp -a” (que copia recursivamente e mantém as permissões de acesso), como em:

# cp -a /home/* /mnt/sdb2/

e) Desmonte a partição e monte-a novamente no diretório de destino, como em:

# umount /mnt/sdb2
# mount /dev/sdb2 /home

f) Verifique se todos os arquivos e diretórios foram copiados para os locais corretos. Montar a partição sobre o diretório antigo não subscreve os arquivos antigos, que ficam apenas ocultos. Se algo der errado, você pode
restaurar o diretório anterior simplesmente desmontando a nova partição.

g) Com tudo verificado, adicione a entrada no “/etc/fstab”, especificando a partição, o diretório onde ele ficará montada, o sistema de arquivos e os parâmetros do Quota, como em:

/dev/sdb2 /home ext3 defaults,usrquota,grpquota 0 2

h) Reinicie o micro (ou remonte a partição) e continue com a configuração do Quota, seguindo os passos a seguir. 🙂

Em seguida você deve criar os arquivos “aquota.user” e “aquota.group” (onde ficam armazenadas as configurações do Quota) no diretório raiz da partição. Se você está ativando o Quota para a
partição montada no /home, então os dois arquivos serão “/home/aquota.user” e “/home/aquota.group”.

Por enquanto, vamos apenas criar dois arquivos vazios, usando o comando touch. É importante que ambos fiquem com permissão de acesso “600”, de modo que apenas o root possa acessá-los ou fazer modificações. Os comandos são
executados com a partição montada:

# touch /home/aquota.user
# chmod 600 /home/aquota.user
# touch /home/aquota.group
# chmod 600 /home/aquota.group

Depois da configuração inicial, é recomendável reiniciar o servidor, para que os scripts de inicialização se encarreguem de formatar os dois arquivos, montar a partição usando os parâmetros corretos e outros passos
necessários.

Naturalmente, é possível também aplicar as alterações sem reiniciar o servidor. Nesse caso, é necessário fechar todos os programas e serviços que estejam acessando arquivos dentro da partição e remontar a partição (para que
sejam aplicados os parâmetros incluídos no fstab) usando o parâmetro “-o remount” do mount, como em:

# mount -o remount /home

Para verificar se a partição foi montada corretamente, usando os parâmetros do quota, execute o comando “mount” (sem parâmetros) e veja se o “usrquota,grpquota” adicionados ao fstab aparecem nas propriedades da partição:

# mount

/dev/hda1 on / type ext3 (rw)

/dev/hda2 on /home type ext3 (rw,usrquota,grpquota)

Os arquivos “aquota.user” e “aquota.group” devem ser formatados em um formato especial antes de poderem ser usados pelo quota. Se você reiniciou o sistema depois de criar os arquivos, provavelmente o script de inicialização
do quota já deve ter feito isso, caso contrário é necessário rodar o comando “quotacheck” para que ele faça seu trabalho:

# quotacheck -vagum

O quotacheck faz a verificação inicial dos arquivos e usuários, gerando uma tabela oculta que lista os arquivos de posse de cada usuário. Esta tabela é usada pelo Quota para checar o espaço ocupado por cada um e é atualizada
em tempo real conforme novos arquivos são gravados.

Da primeira vez que ele é executado, exige uma mensagem de erro avisando que os arquivos “aquota.user” e “aquota.group” estão danificados (afinal, eles são arquivos vazios), mas isso é esperado. A função dele é justamente
corrigir o problema:

quotacheck: WARNING – Quotafile /home/aquota.user was probably truncated. Cannot save quota settings…
quotacheck: WARNING – Quotafile /home/aquota.group was probably truncated. Cannot save quota settings…
quotacheck: Scanning /dev/hda2 [/home] done
quotacheck: Checked 36 directories and 331 files

Depois de executá-lo, você perceberá que os arquivos “aquota.user” e “aquota.group” aumentaram de tamanho, indo dos zero bytes iniciais para alguns kbytes, sinal de que o quotacheck fez seu trabalho:

# ls -lh /home

-rw——- 1 root root 7,0K 2008–01-25 08:24 aquota.group
-rw——- 1 root root 7,0K 2008–01-25 08:24 aquota.user

Com tudo pronto, ative o uso das quotas usando o comando “quotaon”, seguido da pasta onde está montada a partição, como em:

# quotaon /home

Se precisar desativar temporariamente o uso das quotas, use o comando “quotaoff”, como em:

# quotaoff /home

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X