Como corrigir as cotas de disco no servidor cPanel com o fixquotas, inclusive em XFS, Ubuntu e VPS em contêiner OpenVZ ou Virtuozzo.
O cPanel usa as cotas do sistema de arquivos do Linux para limitar e medir o espaço de cada conta. Quando elas param de funcionar, o WHM mostra uso de disco zerado ou desatualizado, contas passam do limite sem bloqueio e a criação de contas reclama de cota. Na maioria dos casos o conserto é um script do próprio cPanel e um reinício.
Sintomas de cota quebrada no cPanel
- Todas as contas aparecem com 0 MB de uso, ou com uso que não muda, em WHM » Account Information » List Accounts.
- Mensagens como
No filesystems with quota detectedouQuotas have been enabled, however they may not be up to date. - Contas passam do limite do plano e continuam gravando normalmente.
Antes de começar
- Acesso SSH como
root. - Uma janela de manutenção: no XFS, que é o padrão do AlmaLinux e do CloudLinux, a correção só vale depois de reiniciar o servidor.
Como verificar se as cotas estão ativas
mount | grep -E 'usrquota|uquota|usrjquota'
repquota -a | head -20
Se o mount não mostra nenhuma opção de cota na partição onde fica o /home (ou na raiz /, quando não há partição separada), ou se o repquota não lista os usuários, as cotas estão desligadas.
Como corrigir as cotas com o fixquotas
- Rode o script do cPanel.
Ele ativa as cotas no/usr/local/cpanel/scripts/fixquotas/etc/fstabe na configuração de boot quando necessário, e recalcula o uso de cada conta. Em servidores com muitos arquivos pode demorar. - Reinicie o servidor se o script pedir, o que é a regra no XFS:
No XFS da partição raiz as cotas só podem ser ligadas durante o boot.reboot - Confira de novo. Depois do reinício, rode
repquota -ae veja em WHM » Account Information » List Accounts se o uso das contas voltou a aparecer.
Cotas no Ubuntu
No Ubuntu o cPanel precisa do módulo de kernel quota_v2. Verifique com:
lsmod | grep quota_v2
Se não aparecer nada, o kernel em uso não traz o módulo (comum em kernels enxutos de nuvem). Instale o kernel genérico ou o pacote de módulos extras da sua versão, reinicie e rode o fixquotas outra vez.
Cotas em VPS OpenVZ ou Virtuozzo (contêiner)
Em VPS de contêiner a cota por usuário depende de uma configuração no servidor físico, fora do alcance de quem só tem acesso ao VPS. Se o fixquotas mostra journaled quota support: not available with vzaquota ou No filesystems with quota detected, peça ao provedor para ativar as cotas de segundo nível (por usuário) do contêiner. No nó físico, o provedor faz:
# Virtuozzo 7 / OpenVZ 7
prlctl set ID_DO_CONTAINER --quotaugidlimit 1
prlctl restart ID_DO_CONTAINER
# OpenVZ legado (vzctl)
vzctl set ID_DO_CONTAINER --quotaugidlimit 10000 --save
vzctl restart ID_DO_CONTAINER
Depois disso, dentro do VPS, rode /usr/local/cpanel/scripts/fixquotas.
Problemas comuns
Depois do fixquotas e do reboot o uso continua zerado
O servidor pode ter subido com outro kernel ou com a linha de boot sem a opção de cota. Rode o fixquotas de novo, confira a saída e reinicie. Se persistir, verifique se o /home está em partição separada sem a opção no /etc/fstab.
Disco cheio mesmo com cotas corretas
Cota mede só os arquivos dos usuários. Logs, backups locais e arquivos do sistema também ocupam espaço. Veja servidor com disco cheio: como achar o que ocupa.