Introdução
Cotas ou Quota de disco, este é um recurso, sem dúvida, muito interessante e muito utilizado em servidores de arquivos, servidores WEB e de e-
mail. Em geral, não existem vantagens ou motivos para aplicar este recurso a um computador pessoal, mas certamente, existem grandes motivos
para aplicá-lo a um servidor.
- Um motivo para se aplicar cota de disco
Um dos motivos para se aplicar este recurso é evitar que, por exemplo, um cliente de hospedagem WEB consuma toda a capacidade de
armazenamento do servidor, prejudicando, desta forma, outros clientes e o futuro do negócio.
Já em servidores de arquivos, isto garante que cada cliente ou utilizado, possua uma capacidade predeterminada de espaço, garantindo assim,
armazenamento para todos aqueles que necessitam.
Antes de utilizar este recurso, você precisa saber que, originalmente, somente os sistemas de arquivos Ext2 e Ext3 ofereciam suporte a Quota
nativamente. A partir do Kernel 2.6, foi incluído suporte a ReiserFS. Claro que, atualmente, o sistema de arquivos Ext4 também conta com este
recurso.
* Quota só podem ser aplicadas em partições.
Chega de papo, mão na massa!
Configurações
A primeira coisa a fazer, é verificar se o pacote referente a este recurso já está instalado no sistema, caso não esteja, será preciso instalá-lo. O
nome do pacote é “An implementation of the disk quota system”.
No
Debian, você pode verificar se ele estar instalado utilizando este comando:
# dpkg -l | grep quota
Caso não esteja instalado, utilize este comando para instalar:
# aptitude install quota quota-tools
Antes de configurar a cota de disco para o usuário, é preciso definir quais partições terão suporte a este recurso. Isso, por sua vez, é definido no
arquivo que contém a tabela de partições "/etc/fstab".
Para editar este arquivo, irei utilizar o Nano, mas fique à vontade para utilizar o editor de sua preferência:
# nano /etc/fstab
Editando este arquivo, podemos achar a seguinte linha:
/dev/sda3 /home ext3 defaults 0 0
Deveremos modificá-la, seguindo este modelo:
- usrquota: cota para usuário
- grpuota: para grupo
Sendo assim, a linha final será:
/dev/sda3 /home ext3 defaults, usrquota,grpquota 0 2
Ou, para quem tiver utilizando Ext4:
/dev/sda3 /home ext4 defaults,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 02
Ao digitar estas linhas, fique atento para não deixar espaço entre defaults e as opções de cota.
Para que o suporte a cotas seja ativado, é preciso reiniciar o ambiente
GNU/Linux, pois nossas modificações foram a nível de partição, e estas
precisam ser montadas novamente.
Uma solução para aqueles que não desejam reiniciar o sistema, é:
# mount -o remount /home
O comando acima, tem como objetivo remontar a partição que recebeu o suporte a cotas, neste caso, “/home”.
Para ter certeza que o suporte 'usrquota' e 'grpquota' foram ativos, execute o comando:
# mount
E aguarde esta linha, ou algo parecido, como retorno:
/dev/sda3 on /home type ext3 (rw, usrquota,grpquota)
Continuando, será preciso criar dois arquivos vazios: “aquota.user” e “aquota.group”. Como o próprio nome sugere, um para o usuário e outro para
o grupo:
# touch /home/aquota.user
# touch /home/aquota.group
# cd /home ; chmod 600 aquota.*
# quotacheck -vagumf
Opções Quotacheck:
- m: Não tenta remontar o sistema de arquivos no modo somente leitura.
- u: Verifica as cotas de usuário.
- g: Verifica as cotas de grupo.
- v: saída detalhada
- f: forçar a checagem e escrita nos arquivos de quota
- a: checar tudo
Os arquivos "aquota.user" e "aquota.group", devem ser criados como Root, como indica (#). Outro detalhe, é que estes devem ser criados dentro
do diretório ao qual foi aplicada a quota, neste caso “/home”.
Para editar a cota de um determinado usuário:
# ed quota -u usuario
O processo de quota é aplicado a nível de Hardware. Você pode definir a cota de um usuário de duas formas, por blocos (tamanho) ou, por Inodes
(quantidade).
Blocos, seria algo como tamanho em disco (1000 blocos é mais ou menos 1M) e Inodes séria algo como quantidade de arquivos ( 1 Inode é mais ou
menos 1 arquivo, não importando seu tamanho).
- Soft Limit e Hard Limit
O Hard Limit é o limite de espaço real, ou seja, quando o usuário atinge o espaço a ele reservado, a gravação de novos arquivos é bloqueada.
O Soft Limit é um limite de alerta que tem como função, emitir um aviso ao usuário, mas não bloqueia a gravação em disco.
- Mudando configurações:
# edquota -t
Estrutura do arquivo editado:
- FileSystem: Partição
- Blocks: Blocos usados
- Soft: Quota de alerta para blocos
- Hard: Limite M
1. Cotas de disco