Aviso: Esta tradução não está relacionada com o Projeto de Documentação do Linux LDP) que no Brasil é representada pela LDP-BR em <http://www.dca.fee.unicamp.br/~malheiro/linux/LDP-br.html>, este material é uma tradução técnica e básica somente para auxiliar os colegas com a leitura em português.
Outros documentos você pode obter em: <http://www.microlink.com.br/~buick/>
Preâmbulo: Este documento é criado por Albert M.C. Tam (bertie@scn.org). Permissão para usar, copiar, e distribuir este documento não-comercialmente são concedidos propósitos por este meio, contanto que o autor/nome do editor e esta advertência aparece em todo e/ou cópias que utilizem este documento; este documento não seja modificado. Este documento é distribuído espero que seja útil, mas SEM QUALQUER GARANTIA, expresso ou implicito. Enquanto todo esforço foi levado para assegurar a precisão da informação deste documento, o autor/editor/responsável NÃO ASSUME QUALQUER RESPONSABILIDADE POR ERROR, ou por resultados de danos com o uso das informação aqui contida.
Este documento descreve como habilitar o arquivo quota do sistema em um host de Linux, controlando quota para usuários, e como também o uso de miscelanias de comandos de quotas. É voltado para usuários com o núcleo 2.x corrente (testado no 2.0.7). É recomendado que os usuários com núcleos mais velhos o modifiquem.
Sinta livre para enviar qualquer realimentação ou comentários a
bertie@scn.org se você acha algum erro, ou qualquer informação imprecissa.
Eu gosto disto!
Quota permite especificar limites em dois aspectos de armazenamento de disco: o número de inodes que um usuário pode possuir; e o número de blocos de disco que podem ser alocado a um usuário.
A idéia atrás do quota é que os usuários são forçados a ficar debaixo do limite de consumação do disco na maioria do tempo e tomar a habilidade deles no consumo do espaço do disco ilimitado no sistema.
Estado atual de Quota no Linux
O suporte do quota foi integrado na versão 1.3.8x do núcleo que eu vi, e está muito bem no lançamento do núcleo 2.0. Se o seu sistema não tem suporte ao quota, eu recomendo uma nova versão.
Atualmente, o quota só trabalha com sistema de arquivo do tipo ext2.
Exigências para a utilização do Quota no Linux
Núcleo
A fonte do núcleo 2.x está disponível em
ftp://tsx-11.mit.edu/pub/linux/sources/system/v2.0/
O software de quota
Dependendo da distribuição do Linux que você tem, você pode, ou não pode
ter o software de quota instalado em seu sistema. A fonte do software de
quota esta disponível em
ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/subsystems/quota/all.tar.gz.
1. Reconfigure o seu kernel
Reconfigure o seu kernel e adicione suporte a quota digitando y em:
Quota support (CONFIG_QUOTA) [n] y
2. Compile e instale os software de quota
A fonte de software de quota está disponível em
ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/subsystems/quota/all.tar.gz.
Enquanto o pacote do software de quota que eu mencionei anterior já foi portado para o Linux, e deveria compilar em todos os sistemas de Linux que rode kernels 2.x; você pode ter problemas onde o compilador de C reclame de alguma constante indefinida de MNTOPT. Se isto acontecer, você precisará copiar o seu mntent.h por cima de /usr/include/mntent.h e adquirir o quota para compilar.
3. Modifique o seu script init de sistema para conferir quota e ligar o quota no momento do boot
Aqui esta um exemplo:
# Checando a quota e ligando a quota.
if [ -x /usr/sbin/quotacheck ]
then
echo "Checando as quotas. Isto pode levar algum tempo."
/usr/sbin/quotacheck -avug
echo " Feito."
fi
if [ -x /usr/sbin/quotaon ]
then
echo "Ligando a quota."
/usr/sbin/quotaon -avug
fi
A regra dourada é aquele *always* que o quota devolve em *after* do seus sistemas de arquivo no /etc/fstab se estiverem montados, ou o quota não irar rodar. Eu recomendo que o quota esteja ligado ao término de seu script de init do sistema, ou, se você gosta, corrija depois que o arquivo de sistemas esteja montado em seu script de init de sistema.
4. Modifique o /etc/fstab
As Partições que você não habilitou o quota olhar normalmente algo como:
/dev/hda1 / ext2 defaults 1 1
/dev/hda2 /usr ext2 defaults 1 1
Adicione o quota para o sistema de arquivo, adicione "usrquota" para o
quarto campo que contem a palavra "default".
/dev/hda1 / ext2 defaults 1 1
/dev/hda2 /usr ext2 defaults,usrquota 1 1
5. Crie um registro de quota "quota.user"Este arquivo de registro de quota, quota.user, deve ser criado através do root, e tenha somente permissão de leitura-escritura para o root e nenhuma permissão para os outros.
Login como root. Vá para base da partição que você deseja habilitar a quota, e crie o quota.user fazendo:
touch /partition/quota.user
chmod 600 /partition/quota.user
6. Reinicie
Agora reinicie o sistema para as mudanças que você fez entrarem em vigor.
Também note aquelas partições subseqüentes que você deseja habilitar no quota no futuro somente requer os passos 4, 5, e 6.
Configuração do quota no Linux - Parte II: nomeando usuários para o quota
Esta operação é executada com o comando edquota. Por exemplo, o comando "edquota bob" o levará ao vi (ou o editor especificado em sua variável de ambiente $EDITOR) edite o quota para o usuário "bob" para cada partição que queira habilitar no quota:
Quotas for user bob:
/dev/hda2: blocks in use: 2594, limits (soft = 5120, hard = 6400)
inodes in use: 356, limits (soft = 1000, hard = 1500)
"blocos em uso" é o número total de blocos (em kilobytes) que um usuário tem para consumir numa partição.
"inodes em uso" é o número total de arquivos que um usuário está usando numa partição.
Além do edquota, há 3 outras condições que você deve se familizar são: o Soft Limit, Hard Limit, and Grace Period.
Soft Limit Normalmente, o soft limit indica a quantidade máxima de uso do disco que um usuário de quota está usando numa partição. Mas quando combinada com o período de graça, age como uma fronteira para o usuário de quota é emiti algumas advertências sobre a quota iminente e que ele passou do seu limite.
Hard Limit O Hard limit só trabalha, quando um período de graça é fixo. Especifica o limite absoluto no uso do disco que um usuário de quota não pode ir além deste Hard Limit.
Grace Period Executado com o comando "edquota -t ", o período de graça é um prazo antes que o Soft Limit seja obrigado para um usuário de quota. Cronometra as unidades em sec(segundos), min(minutos), hour(horas), day(dias), week(semanas), e month(meses) que pode ser usado. Isto é você verá com o comando "edquota -t ":
Time units may be: days, hours, minutes, or seconds
Grace period before enforcing soft limits for users:
/dev/hda2: block grace period: 0 days, file grace period: 0 days
Mude os 0 dias param qualquer duração de tempo que você ache razoável. Eu pessoalmente escolho 7 dias (ou 1 semana).
Repquota
Repquota produz uma informação resumida do quota para um sistema de arquivo.
Aqui é amostra reproduzida do repquota:
# repquota -a
Block limits File limits
User used soft hard grace used soft hard grace
root -- 175419 0 0 14679 0 0
bin -- 18000 0 0 735 0 0
uucp -- 729 0 0 23 0 0
man -- 57 0 0 10 0 0
user1 -- 13046 15360 19200 806 1500 2250
user2 -- 2838 5120 6400 377 1000 1500
Quotaon e Quotaoff
Quotaon é usado para virar o accouting do quota; quotaoff
é para desligar.
De fato ambos os arquivos são semelhantes. Eles são executados na
inicialização do sistema e no shutdown.
![]() |
Copyright © 1997-1998 - Buick. All Rights Reserved. | ![]() |