Existe a possibilidade de habilitarmos cotas no Linux para gerenciarmos melhor o uso do espaço disponĂvel em disco. Este recurso Ă© especialmente importante em ambientes multiusuĂĄrios, servidores de Web, servidores de arquivos, servidores de e-mail, etc.
No gerenciamento de cotas Ă© possĂvel definirmos a quantidade de espaço em disco para cada usuĂĄrio ou grupo de usuĂĄrios.
Ă preciso habilitar o gerenciamento de cotas antes de utilizarmos este recurso.Veja os passos a seguir:
1) Ă preciso que o suporte a quotas esteja compilado no Kernel.2) Edite o arquivo /etc/fstab e adicione o gerenciamento de cota para usuĂĄrio (usrquota) e para grupo (grpquota) no dispositivo desejado.
$ vi /etc/fstab
/dev/hda6 /home ext2 defaults,usrquota,grpquota 1 2
3) Crie o arquivo quota.user e quota.group no diretĂłrio /home com o comando âquotacheck âcugâ e configure as permissĂ”es de leitura e escrita somente para o superuÂsuĂĄrio. Em algumas distribuiçÔes estes arquivos tĂȘm os nomes aquota.user e aquota.group. Estes dois arquivos serĂŁo os bancos de dados para as quotas de usuĂĄrio e grupo respectivamente.
Para criar os arquivos de cotas manualmente:
$ touch /home/quota.user
$ touch /home/quota.group
$ chmod 600 /home/quota.user
$ chmod 600 /home/quota.group
Ou
$ quotacheck -cug
4) Execute o comando quotacheck âavug para iniciar o banco de dados recĂ©m-criado.
5) Verifique se o banco de dados foi iniciado. Os arquivos quota.user e quota.group nĂŁo devem ter tamanho zero.
$ ls âlga /home
6) Habilite o serviço de quotas:
$ quotaon -a
7) Tenha certeza de que o serviço de quotas é habilitado no boot. Se não existir o arquivo /etc/rc.d/quotas, crie um arquivo de script:
$ vi /etc/rc.d/quotas
#!/bin/bash
/sbin/quotaon -avug
Altere as permissÔes para 755:
$ chmod 755 /etc/rc.d/quotas
Crie o link simbĂłlico para o arquivo de quotas para o runlevel 3 e runlevel 5:
$ ln âs /etc/rc.d/quotas /etc/rc.d/rc3.d/S20quotas
$ ln âs /etc/rc.d/quotas /etc/rc.d/rc5.d/S20quotas
8) Faça checagem do sistema de quotas uma vez por semana colocando o comando quotacheck no cron do root:
$ crontab âe
0 3 * * 0 /sbin/quotacheck âavug
Uma vez feitos estes passos, o sistema de quotas poderĂĄ ser utilizado.
Existem quatro tipos de limites de quotas a saber:
- Limite FĂsico por UsuĂĄrio (user hard limit): O limite fĂsico Ă© a quantidade total de espaço em disco que um usuĂĄrio pode ter. O usuĂĄrio nĂŁo poderĂĄ gravar mais nada quando este limite for alcançado;
- Limite Leve por UsuĂĄrio (user soft limits): O limite leve funciona como uma ĂĄrea de aviso. Quando este limite Ă© atingido o sistema avisa o usuĂĄrio que seu espaço em disco estĂĄ acabando. O usuĂĄrio poderĂĄ fazer gravaçÔes em disco atĂ© que o limite fĂsico seja alcançado;
- Limite FĂsico por Grupo (group hard limit): O limite fĂsico por grupo define o mĂĄximo de espaço em disco que um grupo de usuĂĄrios possa ter. Se este limite for alcançado, os usuĂĄrios do grupo nĂŁo poderĂŁo mais efetuar gravaçÔes mesmo que haja espaço disponĂvel para um determinado usuĂĄrio;
- Limite Leve por Grupo (group soft limit): Tem o mesmo conceito do limite fĂsico por grupo, mas funciona como uma ĂĄrea de aviso.
Ainda podemos configurar no gerenciamento de cotas um PerĂodo de Graça (grace period) para que um usuĂĄrio ou grupo que tenha atingido o limite leve possa apagar alguns arquivos e ficar dentro do estabelecido.
Depois que o tempo especificado no perĂodo de graça for ultrapassado e nenhuma ação for tomada, o limite leve passa a ser limite fĂsico, impossibilitando os usuĂĄrios de trabalharem atĂ© que a situação seja de fato resolvida. Este limite pode ser em minutos, horas, dias, semanas e atĂ© meses.
Vejamos agora os comandos para gerĂȘncia de quotas:
Comando quota
O comando quota mostra as quotas de espaço em disco configuradas para um determinado usuårio ou grupo e o espaço utilizado.
Suas opçÔes mais frequentes são:
- -u: Mostra a cota definida para um determinado usuĂĄrio (padrĂŁo);
- -g: Mostra a cota definida para um determinado grupo;
- -q: Mostra somente quando a cota for excedida;
- -v: Mostra as quotas mesmo que nenhuma esteja definida.
Exemplo:
$ quota âv uira
Disk quota for user uira (uid 502):Filesystem blks quota limit grace files quota limit grace/dev/hda6 18320 19000 20000 58 0 0
Neste exemplo o usuĂĄrio uira estĂĄ usando 18320 blocos. O limite leve sĂŁo 19000 blocos e o limite fĂsico sĂŁo 20000 blocos.
Somente o superusuĂĄrio pode ver a cota de outros usuĂĄrios. Um usuĂĄrio comum pode ver a sua prĂłpria cota e a cota do grupo de que Ă© membro.
Comando quotaon
O comando quotaon habilita o gerenciamento de quotas em um dispositivo previamente configurado.
As opçÔes mais frequentes são:
- -a: Habilita o gerenciamento de quotas para todos os dispositivos configurados para controle de quotas no arquivo /etc/fstab;
- -g: Habilita o gerenciamento de quotas para grupos em um determinado dispositivo;
- -u: Habilita o gerenciamento de quotas para usuĂĄrios em um determinado dispositivo;
- -v: Mostra todos os dispositivos onde o gerenciamento de quotas foi habilitado.
Exemplo:
$ quotaon âavug
Habilita quotas de usuĂĄrios e grupos para todos os dispositivos configurados para tal em /etc/fstab.
Comando quotaoff
Este comando desabilita o gerenciamento de quotas em determinados dispositivos.
As opçÔes deste comando são semelhantes ao comando quotaon.
Exemplo:
$ quotaoff âgu /dev/hda6
Comando quotacheck
Este comando faz uma varredura em um determinado dispositivo e constrĂłi os arquivos de banco de dados de quotas. Ă importante que este comando seja executado com certa regularidade para que o banco de quotas esteja fiel Ă realidade do sistema de arquivos.
As opçÔes deste comando são:
- -a: Faz a varredura de todos os dispositivos configurados para o gerenciamento de quotas no arquivo /etc/fstab e constrĂłi a base de dados para usuĂĄrios e grupos;
- -g grupo: ConstrĂłi a base de dados de quotas para um determinado grupo;
- -u usuĂĄrio: ConstrĂłi a base de dados de quotas para um determinado usuĂĄrio;
- -v: Mostra todos os procedimentos executados pelo quotacheck.
Exemplo:
$ quotaoff âa
$ quotacheck âaug
$ quotaon
Se vocĂȘ nĂŁo desabilitar as quotas para um determinado dispositivo ao executar o comando quotacheck, as informaçÔes coletadas ficarĂŁo em memĂłria, mas os arquivos com a base de dados nĂŁo serĂŁo atualizados.
Comando edquota
Este comando edquota edita quotas para usuårios e grupos. Ele utiliza o editor de texto vi ou outro editor de textos padrão para configurar as quotas de disco. O arquivo de configuração de quotas poderå parecer um pouco estranho, mas sua configuração é simples.
As opçÔes disponĂveis para o comando sĂŁo:
- -g: Se a opção âg for especificada, o edquotas deverĂĄ receber como parĂąmetro o nome do grupo;
- -u: Esta é a opção padrão, para editar as quotas do usuårio;
- -p usuĂĄrioexemplo: Esta opção Ă© chamada de proto-usuĂĄrio. VocĂȘ pode utilizar esta opção para copiar as configuraçÔes de um usuĂĄrio padrĂŁo para um outro usuĂĄrio;
- -t: Esta opção Ă© para configurar o perĂodo de graça para os usuĂĄrios ou determinado grupo. Deve ser combinada com a opção âu ou âg.
Exemplo:
$ edquota âu uira
Quotas for user: uira/dev/hda6: blocks in use: 136, limits (soft = 19000, hard = 20000)Inodes in use: 132, limits (soft = 0, hard = 0)
Neste exemplo o limite leve (soft) sĂŁo 19000 blocos e o limite fĂsico (hard) sĂŁo 20000.
$ edquota âtu
Time units may be: days, hours, minutes, or secondsGrace period before enforcing soft limits for users:/dev/hda6: block grace period: 15 days.File grace period: 7 days
Neste exemplo o perĂodo de graça sĂŁo 15 dias para blocos e 7 dias para arquivos (inodes).
Comando repquota
Este comando cria um relatório das quotas e utilização do disco dos usuårios de um determinado dispositivo ou grupo.
As opçÔes deste comando são:
- -a: Cria um relatĂłrio de cotas para todos os dispositivos configurados para gerenciamento de cotas no arquivo /etc/fstab;
- -u: Esta é a opção padrão, que cria um relatório de utilização por usuårios;
- -g: Esta opção reporta a utilização de cotas por grupo;
- -v: Cria um cabeçalho descritivo para o relatório.
Exemplo:
$ repquota âva
*** Report for user quotas on /dev/hda6 (/home)Block limits File limitsUser used soft hard grace used soft hard graceroot 718000 0 0 418 0 0
https://youtu.be/oT6oTQw1iyo
Aprenda muito mais sobre Linux em nosso curso online. VocĂȘ pode efetuar a matrĂcula aqui. Se vocĂȘ jĂĄ tem uma conta, ou quer criar uma, basta entrar ou criar seu usuĂĄrio aqui.
Gostou? Compartilhe
Â
Read the full article