Um requisito importante na solução
LDAP+
NFS é a imposição de limite, a cada um dos usuários, quanto a quantidade de espaço em disco utilizada. O aplicativo "quota" permite estabelecer que o espaço máximo utilizado será de 300MB ("hard limit"), mas um aviso será emitido ao usuário assim que a ocupação atingir os 200MB ("soft limit"). O intervalo de 7 dias, durante o qual é permitido ao usuário conservar-se entre um limite e outro, é conhecido como "grace period".
Para instalar o gerenciamento de quotas basta o pacote "quota" e dependências. Após a instalação, verifique se o serviço está funcionando. "Importante:" O sistema de quotas exige que no servidor sejam realizadas as mesmas configurações das estações, relativamente ao "libpam-ldap" e ao "nsswitch.conf".
# apt-get install quota
# /etc/init.d/quota status
Para permitir o gerenciamento de quotas, é necessário que a partição "home" seja montada de maneira especial. Os parâmetros "usrjquota=aquota.user", "grpjquota=aquota.group" e "jqfmt=vfsv0", incluídos no arquivo "/etc/fstab", permitem que o gerenciamento de quotas na partição "ext4" tenha "journaling" (seja jornalada).
#UUID=bed295bc-0d88-4c62-9763-dd9624741c97 /home ext4 defaults 0 2
UUID=bed295bc-0d88-4c62-9763-dd9624741c97 /home ext4 defaults,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 2
Uma vez configurado "/etc/fstab", o comando "quotaon" habilita o gerenciamento de quota, por meio da criação dos arquivos "/home/aquota.user" e "/home/aquota.group", durante o próximo "boot" do sistema.
- -a - verifica todos os sistemas de arquivos em /etc/fstab que estão habilitados como "automount"
- -u - verifica quotas de usuários (opção padrão)
- -g - verifica quotas de grupos
- -v - modo verbose.
# quotaon -augv
# shutdown -r now
Para editar a quota de um usuário utilize o comando edquota, o qual abre um arquivo temporário no editor de texto padrão. Os limites impostos ao usuário "aluno" foram 204800KB (=200 x 1024) como "soft limit" e 307200KB (300 x 1024) como "hard limit". Note que o 1o parâmetro é a partição de interesse, os 3 seguintes são "blocos atuais", "blocos permitidos" e "blocos físicos", e os 3 últimos são "inodes atuais", "inodes permitidos" e "inodes físicos). O número 0 indica que as quotas não se aplicam ao "inodes", ou seja, não há limite para o número de pastas e arquivos.
# edquota aluno
Quotas de disco para user aluno (uid 10000):
Sistema de arquivos blocos permitido físico inodes permitido físico
/dev/sdb1 20 204800 307200 5 0 0
Sempre que um valor de conta for alterado, é necessário executar o comando "quotacheck", para que sejam atualizados os arquivos "aquota.user" e "aquota.group". No entanto, é imprescindível que o sistema esteja trabalhando em estado "mono usuário". Após encerrar a sessão gráfica no gnome e utilizando CRTL+ALT+F1, entre no sistema como "root", desative a verificação de quotas, execute a checagem e ative a verificação novamente.
# quotaoff -augv
# quotacheck -augv
# quotaon -augv
Para exibir a quota de um usuário utilize "quota", para replicar a quota de um usuário a outro utilize "edquota" e para listar a quota de todos usuários utilize "repquota". Para descobrir o espaço ocupado por uma pasta e suas subpastas utilize "du", padrão do
GNU/Linux.
# quota -v aluno
# edquota -p aluno anderson
# repquota -a
# du -acl /home/users/anderson