Accueil
» ADMINISTRATEUR RÉSEAU
»
Comment supprimer l'historique des versions des fichiers ownCloud depuis la ligne de commande
Comment supprimer l'historique des versions des fichiers ownCloud depuis la ligne de commande
L'interface en ligne de commande d'ownCloud permet de libérer de l'espace de stockage en supprimant les versions de fichiers, mais la commande appropriée dépend de ce que vous entendez par « purge ». Vous pouvez configurer ownCloud pour qu'il supprime uniquement les versions qui ne respectent pas la politique de rétention configurée, supprimer toutes les versions enregistrées pour un ou plusieurs comptes, ou supprimer toutes les versions à l'échelle du système. Ces options diffèrent considérablement en termes de réversibilité et de portée. Vérifiez d'abord si votre serveur est ownCloud Server ou ownCloud Infinite Scale ; ils utilisent des outils en ligne de commande différents.
Les commandes ci-dessous sont basées sur la documentation d'administration actuelle d'ownCloud Server 10.16 et 11.0 et sur le guide Infinite Scale 8.2, vérifiés le 6 octobre 2026. Les chemins d'accès, les noms de service et les identifiants de compte varient selon l'installation ; adaptez donc les exemples avant de les exécuter sur un serveur de production.
Choisissez la méthode de nettoyage qui correspond à votre objectif.
Méthode
Ce qu'il supprime
Meilleure adaptation
Compromis principal
versions:expiresur le serveur ownCloud
Versions considérées comme expirées par la règle de rétention configurée
Maintenance de routine et contrôle des quotas
Elle conserve les versions encore couvertes par la politique, elle ne récupère donc pas forcément autant d'espace immédiatement qu'une purge complète.
versions:cleanup USER_IDsur le serveur ownCloud
Toutes les versions enregistrées pour le ou les comptes spécifiés
Suppression de l'historique d'un compte spécifique
Cet utilisateur perd la possibilité de restaurer les versions antérieures, y compris les versions publiées.
versions:cleanupsans identifiants d'utilisateur
Toutes les versions sauvegardées pour tous les utilisateurs d'ownCloud Server
Une réinitialisation planifiée à l'échelle de l'organisation
Il s'agit d'une opération de destruction de grande envergure, et la commande documentée ne comporte aucune option de prévisualisation.
ocis revisions purgeà l'échelle infinie
Révisions dans tous les espaces par défaut, ou dans une portée de ressources plus restreinte lorsque spécifiée
Déploiements à échelle infinie nécessitant un nettoyage des révisions
Son comportement en mode simulation et ses options de chemin de stockage diffèrent des occcommandes d'ownCloud Server.
Pour la gestion récurrente du stockage, commencez par la politique de rétention versions:expire. Utilisez-la versions:cleanupuniquement lorsque vous souhaitez effacer délibérément l'historique sélectionné.
1. Confirmez votre produit ownCloud et l'emplacement de la commande
Pour le serveur ownCloud, connectez-vous à l'hôte ou au conteneur exécutant l'application PHP et accédez au répertoire d'installation d'ownCloud, où occse trouve le script. Sous Linux, il est courant d'exécuter les commandes avec le compte du serveur web, souventwww-data :wwwrun
cd /var/www/owncloud sudo -u www-data php occ status
Utilisez le chemin d'installation et le compte serveur web réels de votre système. L'exécution occen tant que superutilisateur (root) peut laisser des fichiers appartenant à un compte incorrect ; utilisez donc le compte de service indiqué dans la documentation. Vérifiez que l'application Versions files_versionsest activée ; les commandes de version sont indisponibles lorsque cette application est désactivée et ne sont pas accessibles en mode de maintenance mono-utilisateur.
Cette occ statuscommande vérifie l'installation du serveur ownCloud avant le nettoyage des versions.
Si ownCloud Server s'exécute dans un conteneur Docker, exécutez la commande à l'intérieur de celui-ci. Par exemple, depuis le répertoire contenant votre configuration Compose, un déploiement peut utiliserdocker compose exec owncloud occ status ; remplacez ` owncloud<service_name>` par le nom réel du service dans votre fichier Compose. N'utilisez pas les occexemples pour Infinite Scale.
2. Décider s'il faut imposer la conservation ou l'effacement de l'historique
Utilisez l'expiration lorsque vous souhaitez un nettoyage basé sur une politique.
versions:expireévalue les versions par rapport au versions_retention_obligationparamètre défini config.php. Sans identifiant utilisateur, la commande s'applique à tous les utilisateurs ; vous pouvez également spécifier un ou plusieurs identifiants utilisateur. Pour un compte unique, la commande est :
sudo -u www-data php occ versions:expire alice
Remplacez l'identifiant du compte réel, et non le nom d'affichage ou l'adresse e-mail de la personne, sauf si c'est ainsi que le compte est identifié dans votre installation. Pour appliquer le processus d'expiration à tous les comptes, omettez l'option correspondante alice. Ce choix respecte la règle de conservation configurée : les versions récentes ou conservées ne seront pas nécessairement supprimées.
Cette versions:expirecommande applique la politique de rétention configurée à un compte nommé.
La documentation du serveur ownCloud décrit autole modèle de rétention par défaut et présente également des alternatives basées sur le temps. Consultez votre politique d'expiration avant de lancer l'expiration, notamment si votre organisation est soumise à des obligations légales ou opérationnelles de conservation. Pour une expiration régulière, ownCloud exécute cette opération en tâche de fond. Le manuel d'administration recommande l'utilisation de cron système pour les tâches de fond ; le déclenchement manuel de l'expiration est utile pour une opération de maintenance planifiée, mais ne doit pas remplacer un planificateur correctement configuré.
Utilisez la fonction de nettoyage lorsque vous prévoyez de supprimer toutes les versions dans le périmètre.
Pour un compte, exécutez :
sudo -u www-data php occ versions:cleanup alice
Pour plusieurs comptes, indiquez leurs identifiants séparés par des espaces :
sudo -u www-data php occ versions:cleanup alice bob
En l'absence d'identifiants, la commande supprime tous les fichiers versionnés pour tous les utilisateurs :
sudo -u www-data php occ versions:cleanup
La transmission d'un identifiant de compte limite le nettoyage complet de l'historique à cet utilisateur.
Effectuez d'abord une sauvegarde si les versions peuvent être nécessaires à la restauration, et vérifiez les identifiants de compte avant exécution. La commande documentée supprime les données de version et le files_versionsdossier associé. Elle supprime également les versions publiées qui seraient autrement conservées au-delà de la période de rétention normale. Aucun paramètre « aperçu uniquement » n'est documenté pour ownCloud Serverversions:cleanup ; une faute de frappe ou un identifiant omis peut donc avoir des conséquences plus importantes que prévu.
3. Comprendre la différence entre ownCloud Server et Infinite Scale
ownCloud Infinite Scale (oCIS) n'utilise pas la occ versions:cleanupcommande PHP. Sa documentation d'administration décrit le nettoyage des révisions avec la commande `ls` ocis revisions purge. Par défaut, cette commande effectue une simulation, indiquant les éléments qui seraient supprimés sans effacer les révisions. Le chemin de stockage configuré pour les utilisateurs est requis ; cet exemple utilise un chemin fictif :
ocis revisions purge -p /base/path/storage/users
Examinez les résultats de la simulation et vérifiez que le chemin d'accès au stockage est correct. Pour supprimer définitivement les révisions listées par cette simulation, désactivez-la explicitement :
Par défaut, la commande Infinite Scale cible les révisions de tous les espaces. Son --resource-idoption permet de limiter l'opération à un espace ou à un fichier individuel si vous disposez de l'identifiant correct. En cas de doute sur le chemin ou la portée, arrêtez-vous à la simulation et confirmez avec votre configuration de déploiement. La documentation indique que les modes de correspondance de caractères alternatifs peuvent augmenter l'utilisation du processeur et de la mémoire sur les grands espaces ; conservez la configuration par défaut sauf si vous avez constaté la nécessité de la modifier.
Sans identifiant utilisateur, versions:cleanupcible tous les utilisateurs d'ownCloud Server.
4. Vérifiez le résultat sans supprimer d'autres données.
Après un nettoyage du serveur, examinez quelques comptes représentatifs dans l'interface web et vérifiez que les anciennes entrées n'apparaissent plus dans l'historique des versions de chaque fichier. Consultez le résultat de la commande pour les utilisateurs traités. Pour Infinite Scale, comparez les résultats de la purge avec ceux de la simulation et vérifiez l'état d'exécution de la commande. Enfin, contrôlez l'utilisation du stockage au niveau pertinent pour votre déploiement : le rapport de quotas ownCloud, le système de fichiers local ou le stockage d'objets configuré.
Ne supprimez pas manuellement les fichiers pour files_versions« finaliser » un nettoyage. Les commandes prises en charge par ownCloud coordonnent le nettoyage des versions avec les métadonnées de l'application ; la suppression d'objets de stockage sous-jacents à l'application peut entraîner des incohérences dans les enregistrements. De plus, l'espace disque récupéré sur le serveur peut différer du nombre de versions supprimées si votre système de stockage utilise des snapshots, la réplication ou un mécanisme de suppression différée. Ce point dépend du système de stockage et doit être vérifié auprès de son administrateur ou de son fournisseur.
Quelle option devriez-vous choisir ?
Choisissez cette optionversions:expire si votre objectif est la gestion continue des quotas avec les règles de rétention existantes.
Choisissez l'option « étendue »versions:cleanup USER_ID si vous devez supprimer tout l'historique des comptes connus et que vous acceptez la perte des points de restauration.
Choisissez l'option globaleversions:cleanup uniquement pour une réinitialisation intentionnelle de l'ensemble du système après la sauvegarde et l'examen du périmètre.
Choisissez le flux de travail de purge à échelle infinie uniquement sur oCIS et examinez son exécution à blanc par défaut avant de le configurer --dry-run=false.
Note de version : Le comportement des commandes et les exemples ont été vérifiés par rapport à la documentation d’ownCloud Server 10.16/11.0 et d’Infinite Scale 8.2 le 6 octobre 2026. Consultez le manuel correspondant à votre version installée avant d’exécuter une opération destructive.