Início
» Como fazer
»
Defina uma política de expiração confiável para arquivos excluídos do Nextcloud.
Defina uma política de expiração confiável para arquivos excluídos do Nextcloud.
Para esvaziar a pasta "Itens Excluídos" do Nextcloud automaticamente, defina um tempo máximo de retenção e certifique-se de que as tarefas em segundo plano do Nextcloud sejam executadas regularmente. Por exemplo, configure o Nextcloud trashbin_retention_obligationpara auto, 30excluir automaticamente itens da lixeira com mais de 30 dias e, em seguida, execute o cron recomendado pelo sistema a cada cinco minutos. A autopolítica padrão, por si só, não garante a exclusão exata no 30º dia.
A exclusão automática é permanente. Escolha um período de retenção que dê aos usuários tempo para corrigir erros e mantenha backups de tudo o que precisa ser recuperável após sair da lixeira.
O que o Nextcloud limpa por padrão?
A documentação do administrador do Nextcloud 35 descreve o recurso autocomo mantendo os itens excluídos por pelo menos 30 dias e, em seguida, permitindo que sejam removidos caso haja necessidade de espaço de armazenamento. Se o espaço não for necessário, os itens podem permanecer por mais de 30 dias. Esse comportamento faz da lixeira uma área de recuperação, e não um temporizador de exclusão estrito de 30 dias.
Valor da política
O que significa
Use-o quando
auto
Guarde os itens por pelo menos 30 dias; remova-os posteriormente se precisar de espaço.
Você deseja a janela de recuperação padrão e a limpeza baseada em espaço.
auto, 30
Itens com mais de 30 dias são excluídos automaticamente; itens também podem ser removidos antes, caso haja necessidade de espaço.
Você quer uma idade máxima de 30 dias.
30, 90
Mantenha os itens por pelo menos 30 dias e exclua-os após 90 dias.
Você precisa de uma janela de recuperação mais um limite superior de retenção.
disabled
Não limpe a lixeira automaticamente.
Você possui um processo de retenção separado e pretende manter os itens excluídos.
A retenção não é absoluta se a cota de um usuário for excedida devido a itens na lixeira: o Nextcloud pode ignorar a política configurada e limpar os itens até que o requisito de cota seja atendido. Consulte a documentação atual sobre retenção na lixeira antes de aplicar uma política a contas com restrições de cota.
Defina uma idade máxima para arquivos excluídos.
Execute o comando occa partir do diretório de instalação do Nextcloud e como o usuário HTTP para que as permissões de arquivo permaneçam consistentes. No Debian ou Ubuntu, esse usuário geralmente é `sudo` www-data, e o caminho de instalação costuma ser `/usr/local/nextcloud` /var/www/nextcloud. Substitua `/usr/local/nextcloud` pelo seu usuário e caminho reais em outros sistemas ou em contêineres.
O resultado deve mostrar auto, 30. Se preferir uma política diferente, use a tabela acima e insira o valor desejado. Essa 30, 90opção visa manter os itens por pelo menos 30 dias e removê-los após 90 dias; a aplicação de cotas ainda pode forçar a limpeza antecipada.
Certifique-se de que as tarefas em segundo plano sejam executadas de forma confiável.
O Nextcloud executa a expiração da lixeira como uma tarefa em segundo plano. O manual do administrador indica que a tarefa em segundo plano da lixeira é executada a cada 30 minutos, mas isso ainda depende da execução do gerenciador de tarefas em segundo plano do seu sistema operacional. O Nextcloud recomenda o uso do cron do sistema operacional para tarefas regulares; seu modo AJAX padrão é menos confiável, pois as tarefas são executadas apenas quando os usuários visitam o site.
Configure o Nextcloud para o modo cron:
sudo -E -u www-data php occ background:cron
Mude o Nextcloud para o modo cron para que as tarefas agendadas em segundo plano não dependam de os usuários acessarem o site.
Em seguida, edite o crontab do usuário do servidor web. Em um host Debian ou Ubuntu típico:
sudo crontab -u www-data -e
Adicione esta linha, alterando o caminho do executável do PHP ou do Nextcloud caso sua instalação utilize locais diferentes:
*/5 * * * * php -f /var/www/nextcloud/cron.php
Agende a execução do cron.php com o usuário HTTP. Substitua o caminho de exemplo do Nextcloud pelo caminho de instalação do seu sistema.
Essa programação aciona o executor em segundo plano do Nextcloud a cada cinco minutos; tarefas individuais mantêm suas próprias programações. Para uma implantação em contêiner, use o serviço cron ou o worker agendado documentado para essa implantação e execute-o cron.phpcomo o usuário web do Nextcloud. Não adicione uma segunda tarefa sem antes acioná-la se sua imagem ou plataforma já a executa.
Como testar o prazo de validade com segurança?
Primeiro, verifique a política e a tarefa agendada. Verifique a política com o comando `<comando>` occ config:system:get trashbin_retention_obligation, depois liste a tarefa agendada:
sudo crontab -u www-data -l
Verifique o valor de retenção salvo e confirme se o usuário do servidor web possui a entrada recorrente no arquivo cron.php.
Nas configurações de administração do Nextcloud, confirme se as tarefas em segundo plano estão definidas como Cron e se o horário da última execução da tarefa está sendo atualizado. Após o período máximo de retenção configurado, verifique os arquivos excluídos em busca de um item de teste antigo que possa ser descartado com segurança. A tarefa de expiração é executada conforme sua programação, portanto, a limpeza não é necessariamente imediata no limite exato de retenção.
Para um teste único com uma política de retenção personalizada, execute o comando retention-aware:
Na versão atual do Nextcloud, trashbin:expireo período de retenção configurado é aplicado. Com a autopolítica padrão, o comando é encerrado sem expirar os itens; a expiração automática padrão é gerenciada pela tarefa em segundo plano. Não substitua trashbin:cleanup --all-userso comando `nextcloud remove permanentemente todos os itens indesejados de todos os usuários, independentemente da idade, e não é uma configuração de retenção de rotina.
Lista de verificação rápida
A política ativa retornada occ config:system:get trashbin_retention_obligationcorresponde ao período de retenção desejado.
As tarefas em segundo plano do Nextcloud estão configuradas para serem executadas pelo Cron, e o crontab do usuário do servidor web inclui o cron.phpcaminho correto.
O tempo de execução da última tarefa é ajustado nas configurações de administração.
Um item de teste antigo, que ultrapassou o tempo máximo de vida, desaparece após a execução da tarefa em segundo plano, enquanto os itens mais recentes permanecem, a menos que o armazenamento ou a pressão da cota exijam a limpeza.
Se o horário da última execução não avançar, verifique o cron do sistema, o caminho da CLI do PHP, o usuário do servidor web e o caminho do Nextcloud antes de alterar o valor de retenção. Uma política correta não pode limpar nada se o processo em segundo plano nunca for executado.