doveadm: Excluir mensagens mais antigas que a data

6

Tenho uma situação em que alguns usuários mantêm mensagens muito antigas (+5 anos) em suas caixas de correio que são apenas um desperdício de espaço e, por motivos de segurança, também devem ser excluídas.

Descobri que eu poderia usar doveadm para isso, no entanto executando algo como:

doveadm expunge -u [email protected] mailbox INBOX savedbefore 1-Jan-2011

Não tem efeito. Do meu entendimento, os clientes de email marcam o email para exclusão antes que o expunge seja executado no servidor para realmente removê-los.

Como posso marcá-los para exclusão usando doveadm e depois executar o comando doveadm antes de ou diretamente e excluí-los completamente?

    
por TCB13 09.04.2016 / 16:30

1 resposta

8

Aparentemente, minha solução estava quase certa, posso fazer o que preciso com:

doveadm expunge -u [email protected] mailbox INBOX SENTBEFORE 1-Jan-2011
doveadm expunge -u [email protected] mailbox INBOX.Sent SENTBEFORE 1-Jan-2011
doveadm expunge -u [email protected] mailbox INBOX.Trash SENTBEFORE 1-Jan-2011
doveadm purge -u [email protected]

Observação : você pode substituir -u [email protected] por -A para segmentar todos os usuários no sistema.

Extra para sistemas de e-mail baseados em WHM / cPanel:

Se você estiver executando uma máquina WHM / cPanel, precisará atualizar o tamanho de seus diretórios de correio manualmente:

/scripts/generate_maildirsize --confirm --verbose account_username

Ou, para todas as contas:

/scripts/generate_maildirsize --allaccounts --confirm --verbose
    
por 09.04.2016 / 18:14