Quota Howto

From Pruonckk.org

Conteúdo

Prefacio

O sistema de Quota, permite que voce especifique limites em dois aspectos, o numero de inodes, por usuarios ou grupos ( ou os dois ), e o numeor de blocos alocados no disco, novamente, tanto para usuarios, e grupos ( ou os dois )

A ideia por tras do quota, é que o usuario é forcado a se manter abaixo do seu limite de disco, evitando, que o usuario coloque coisas, e mais coisas no disco. As Quotas podem ser controladas por usuario, por particao. Se existir mais de uma particao com quotas, onde este usuario pode criar arquivos, entao, as quotas tem que ser especificadas, para cada particao


Requerimentos

Kernel

Nos kernels da série 2.6 voce ja tem o sistema de quotas para os file-systems mais comuns, como por exemplo o ext3, e o xfs, entao basta habilitar, no caso de uma instalacao debian, ele ja vem habilitado no kernel padrao, caso seja necessario compilar um kernel, http://www.kernel.org e pegue a versao que desejar, e habilite as quotas, na parte de sistema de arquivos

Softwares

voce vai precisar de dois softwares, o quota, e o quotatools, entao, apt-get neles

apt-get install quota quotatool


Configurando o fstab

Bom uma das primeiras coisas que voce precisa fazer, é configurar o fstab Entao supondo que voce esta colocando o quota no teu /home

no teu fstab, vai ter uma linha semelhanta a abaixo:

/dev/hda3       /home           ext3    defaults        0       2

entao, basta acrescentar o usrquota

/dev/hda3       /home           ext3    defaults,usrquota        0       2

se desejar, pode tb especificar quotas para grupo

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


Ativando as Quotas

Bom, voce tem dois modos pra fazer, isso, mas eu aconcelho o primeiro mas antes, nas devidas particoes, voce precisa criar os arquivos de quota ( vazios )

touch aquota.user
touch aquota.group

Reiniciando a maquina

Voce reinicia a maquina, para que ele pegue as configuracoes para a particao

reboot

Remontando a particao

Pra evitar rebootar a maquina, voce pode executar o seguinte comando

mount -o remount /home


Adicionando a checagem de quotas no crontab

0 3 * * 0 /sbin/quotacheck -avug


Configiurando as Quotas

Quota por usuario

Aqui tem um exemplo de como se adicionar as quotas, eu tenho um usuario micro01 no meu sistema, entao eu executo o comando edquota -u micro01 que me joga dentro de um vi ( ou outro editor que estiver setado na variavel $EDITOR ), para editar as quotas para o usuario micro01 em cada particao que estiver ativado o sistema de quota

Disk quotas for user micro01 (uid 1001):

Filesystem                   blocks       soft       hard     inodes     soft     hard
/dev/hda3                     11632      11618      11718        179        0        0

A primeira opcao "blocks" representa quanto em kilobytes o usuario esta usando E "inodes" representa o numero de inodes que ele esta usando agora

Voce ve que voce tem soft e hard, após cada uma das duas opcoes, ali voce colocaria os limites que voce deseja


Quota por grupo

A quota por grupo funciona da mesma maneira, porem, ao inves de executar o edquota -u voce executa

edquota -g "GRUPO"


Explicando melhor as opcoes, Soft Limit, Hard Limit, e Grace Period

veja a seguinte saida, do comando repquota -a

 server:~# repquota -a

    *** Report for user quotas on device /dev/hda3
    Block grace time: 7days; Inode grace time: 7days
                        Block limits                File limits
    User            used    soft    hard  grace    used  soft  hard  grace
[----------------------------------------------------------------------]
    root      --   32880       0       0              8     0     0       
    pruonckk  --   26172       0       0           1033     0     0       
    micro01   +-   11632   11618   11718  7days     179     0     0       

ele demostra bem oque irei explicar aqui

Soft Limit

Soft Limit indica o numero maximo, de espaço em disco que o usuario pode usar na particao, combinado com grace period, ele age de modo, que quando o usuario ultrapassa este valor, ele é avisado constantemente

Hard Limit

Hard limit funciona somente quando o grace period é setado, ele especifica o limit absoluta de uso do disco, ou seja, "Daqui voce nao passa!" hehehe

Grace Period

Executado com o comando edquota -t, o grace period é o tempo limite, antes do usuario ser impedido ( pelo softlimit ) de gravar novas coisas no disco. Limites de tempo como segundos, menutos, horas, dias, semanas e até meses podem ser usados

Comandos do quota

quotacheck

Quotacheck é usado para scanear a particao para saber, quanto de disco esta sendo usado, e atualisar o arquivo quota.user, para o estado mais recente. É recomendado rodar o quotacheck, durante o boot da maquina, e vi cron, periodicamente ( digamos toda semana ( ou dia ))

Um exemplo de como se usar o quotacheck é o seguinte:

quotacheck -avug -a

neste caso, ele vai executar o quotacheck para usuarios e grupos, em todas as partiçoes que tenha quota

quotaon e quotaoff

Quotaon e quotaoff sao usados para habilitar e desabilitar as quotas de disco, sao normalmente usadas por scripts de inicializacao


é isso!!!!

Contato: pruonckk@pruonckk.org


Voltar

Ferramentas pessoais
Inutilidades