Início
» ADMINISTRADOR DE REDE
»
Como limpar o histórico de versões de arquivos do ownCloud pela linha de comando
Como limpar o histórico de versões de arquivos do ownCloud pela linha de comando
A linha de comando do ownCloud pode liberar espaço de armazenamento removendo versões de arquivos, mas o comando correto depende do que você entende por "limpar". Você pode permitir que o ownCloud expire apenas as versões que violam a política de retenção configurada, remover todas as versões salvas de uma ou mais contas ou remover todas as versões do sistema. Essas opções diferem bastante em termos de reversibilidade e abrangência. Primeiro, confirme se o seu servidor é o ownCloud Server ou o ownCloud Infinite Scale ; eles usam ferramentas de linha de comando diferentes.
Os comandos abaixo são baseados na documentação de administração atual do ownCloud Server 10.16 e 11.0 e no guia Infinite Scale 8.2, consultados em 6 de outubro de 2026. Os caminhos, nomes de serviço e IDs de conta variam de acordo com a instalação, portanto, adapte os exemplos antes de executá-los em um servidor de produção.
Escolha o método de limpeza que melhor se adequa ao seu objetivo.
Método
O que isso remove
Melhor ajuste
Principal compensação
versions:expireno servidor ownCloud
Versões consideradas expiradas pela regra de retenção configurada
Manutenção de rotina e controle de cotas
Isso preserva as versões ainda abrangidas pela política, portanto, pode não recuperar tanto espaço imediatamente quanto uma limpeza completa.
versions:cleanup USER_IDno servidor ownCloud
Todas as versões salvas para a conta ou contas especificadas.
Remover o histórico de uma conta específica
Esse usuário perde a capacidade de restaurar versões anteriores, incluindo versões publicadas.
versions:cleanupsem IDs de usuário
Todas as versões salvas para todos os usuários do ownCloud Server
Uma reestruturação planejada em toda a organização.
Trata-se de uma operação destrutiva abrangente, e o comando documentado não possui opção de pré-visualização.
ocis revisions purgeem escala infinita
Revisões em todos os espaços por padrão, ou um escopo de recursos mais restrito quando especificado.
Implantações de escala infinita que precisam de limpeza de revisão
Seu comportamento em modo de teste e as opções de caminho de armazenamento são diferentes dos occcomandos do servidor ownCloud.
Para gerenciamento de armazenamento recorrente, comece com a política de retenção e versions:expireuse-a versions:cleanupsomente quando desejar apagar deliberadamente o histórico selecionado.
1. Confirme seu produto ownCloud e a localização do comando.
Para o servidor ownCloud, conecte-se ao host ou contêiner que executa o aplicativo PHP e acesse o diretório de instalação do ownCloud, onde o occscript está localizado. Um padrão comum no Linux é executar comandos como a conta do servidor web, geralmente `sudo` www-dataou wwwrun`sudo`.
cd /var/www/owncloud sudo -u www-data php occ status
Utilize o caminho de instalação e a conta do servidor web corretos para o seu sistema. Executar occcomo root pode resultar em arquivos pertencentes à conta errada, portanto, utilize a conta de serviço documentada. Confirme se o aplicativo Versions files_versionsestá habilitado; os comandos de versão ficam indisponíveis quando esse aplicativo está desabilitado e não estão disponíveis no modo de manutenção de usuário único.
O occ statuscomando verifica a instalação do servidor ownCloud antes da limpeza de versão.
Se o ownCloud Server estiver sendo executado em um contêiner Docker, execute o comando dentro do contêiner do aplicativo. Por exemplo, a partir do diretório que contém sua configuração do Compose, uma implantação pode usar `<service_name>` docker compose exec owncloud occ status; substitua owncloud`<service_name>` pelo nome real do serviço em seu arquivo Compose. Não use os occexemplos para Escala Infinita.
2. Decida se deve manter os dados ou apagá-los.
Use a expiração quando desejar uma limpeza baseada em políticas.
versions:expireAvalia as versões em relação à versions_retention_obligationconfiguração em config.php. Sem um ID de usuário, aplica-se a todos os usuários; você também pode listar um ou mais IDs de usuário. Para uma única conta, o comando é:
sudo -u www-data php occ versions:expire alice
Substitua pelo ID da conta real, não pelo nome de exibição ou endereço de e-mail da pessoa, a menos que seja assim que a conta esteja identificada em sua instalação. Para executar o processo de expiração em todas as contas, omita o parâmetro alice. Essa opção respeita a regra de retenção configurada: ela não excluirá necessariamente versões recentes ou versões retidas de outra forma.
O versions:expirecomando aplica a política de retenção configurada a uma conta específica.
A documentação do servidor ownCloud descreve autoo padrão de retenção padrão e também documenta alternativas baseadas em tempo. Revise sua política antes de executar a expiração, especialmente se sua organização tiver requisitos legais ou operacionais de retenção. Para expirações recorrentes normais, o ownCloud executa essa tarefa em segundo plano. O manual de administração recomenda o uso do cron do sistema para tarefas em segundo plano; invocar a expiração manualmente é útil para uma manutenção deliberada, mas não deve ser um substituto improvisado para um agendador configurado corretamente.
Use a opção de limpeza quando você pretende excluir todas as versões no escopo.
Para uma conta, execute:
sudo -u www-data php occ versions:cleanup alice
Para várias contas, forneça os respectivos IDs separados por espaços:
sudo -u www-data php occ versions:cleanup alice bob
Sem IDs, o comando remove todos os arquivos versionados de todos os usuários:
sudo -u www-data php occ versions:cleanup
Ao fornecer um ID de conta, a limpeza completa do histórico é restrita a esse usuário.
Faça um backup primeiro, caso as versões sejam necessárias para recuperação, e confirme os IDs das contas antes da execução. O comando documentado exclui os dados da versão e a files_versionspasta associada para o seu escopo. Ele também remove versões publicadas que, de outra forma, persistiriam além do período de retenção normal. Não há um parâmetro "somente pré-visualização" documentado para o ownCloud Server versions:cleanup, portanto, um erro de digitação ou um ID omitido pode ter um impacto maior do que o pretendido.
3. Compreenda a diferença entre o servidor ownCloud e o Infinite Scale.
O ownCloud Infinite Scale (oCIS) não utiliza o occ versions:cleanupcomando PHP. Sua documentação de administração descreve a limpeza de revisões com o comando `oCIS` ocis revisions purge. Por padrão, o comando executa uma simulação, que informa o que seria removido sem excluir as revisões. O caminho de armazenamento do usuário configurado é obrigatório; este exemplo utiliza um caminho fictício:
ocis revisions purge -p /base/path/storage/users
Inspecione os resultados da simulação e verifique se o caminho de armazenamento está correto. Para remover definitivamente as revisões listadas por essa simulação, desative explicitamente a simulação:
Por padrão, o comando Infinite Scale abrange revisões em todos os espaços. Sua --resource-idopção permite restringir a operação a um espaço ou arquivo individual, caso você tenha o ID correto. Se o caminho ou o escopo estiverem incertos, interrompa a execução e confirme ambos com a configuração de implantação. A documentação observa que modos alternativos de globbing podem aumentar o uso de CPU e memória em espaços grandes; mantenha o padrão, a menos que você tenha constatado a necessidade de alterá-lo.
Sem um ID de usuário, versions:cleanupo ataque atinge todos os usuários do servidor ownCloud.
4. Verifique o resultado sem excluir mais dados.
Após a limpeza do servidor, inspecione algumas contas representativas na interface web e confirme se as entradas antigas não são mais exibidas no histórico de versões de cada arquivo. Verifique a saída do comando para os usuários processados. Para o Infinite Scale, compare os resultados da limpeza com a saída da simulação e revise o status de conclusão do comando. Em seguida, verifique o uso de armazenamento na camada relevante para sua implantação: relatórios de cota do ownCloud, sistema de arquivos local ou armazenamento de objetos configurado.
Não remova arquivos manualmente para files_versions"finalizar" uma limpeza. Os comandos suportados pelo ownCloud coordenam a limpeza de versões com os metadados do aplicativo; excluir objetos de armazenamento que estejam atrás do aplicativo pode deixar registros inconsistentes. Além disso, a recuperação de espaço em disco do servidor pode ser diferente do número de versões removidas se o seu backend de armazenamento tiver snapshots, replicação ou seu próprio comportamento de exclusão atrasada. Essa parte depende do backend e deve ser verificada com o administrador ou provedor.
Qual opção você deve usar?
Escolhaversions:expire quando seu objetivo for a gestão contínua de cotas com as regras de retenção existentes.
Escolha a opção "Com escopo"versions:cleanup USER_ID quando precisar remover todo o histórico de contas conhecidas e tiver aceitado a perda dos pontos de restauração.
Selecione "versions:cleanup Somente global" para uma reinicialização intencional de todo o sistema após o backup e a revisão do escopo.
Selecione o fluxo de trabalho de limpeza Infinite Scale apenas no oCIS e revise sua execução de teste padrão antes de configurá-lo --dry-run=false.
Nota sobre a versão: O comportamento e os exemplos dos comandos foram verificados em relação à documentação do ownCloud Server 10.16/11.0 e do Infinite Scale 8.2 em 6 de outubro de 2026. Consulte o manual correspondente à sua versão instalada antes de executar qualquer operação que possa causar danos.