GNU/Linux >> Tutoriels Linux >  >> Linux

Comment supprimer des fichiers de plus de N jours à l'aide de tmpreaper sous Linux

tmpreaper est un outil pour supprimer les fichiers auxquels on n'accède pas pendant un certain temps.

Sur les distributions de bureau Linux, c'est bon pour nettoyer les répertoires comme "~/Downloads", où les fichiers s'accumulent sur une période de temps.

Sur les distributions de serveur Linux, cela est utile pour nettoyer les anciens fichiers journaux ou les fichiers de sauvegarde qui ne sont plus nécessaires.

tmpreaper recherche et supprime de manière récursive les fichiers et répertoires auxquels on n'accède pas pendant un certain temps.

AVERTISSEMENT : Avant d'installer tmpreaper et de commencer à jouer avec, assurez-vous de comprendre les implications de l'exécution de tmpreaper, car il supprimera tous les fichiers de votre système qui correspondent aux critères donnés. N'exécutez PAS tmpreaper sur / (répertoire racine), ce qui pourrait supprimer des fichiers critiques nécessaires au bon fonctionnement de votre système. Il n'y a pas de protection intégrée dans le programme tmpreaper pour vous empêcher d'exécuter sur le répertoire racine, car cela rendrait difficile l'utilisation de tmpreaper dans un environnement chrooté.

1. Installer tmpreaper

Sur les systèmes basés sur Debian comme Ubuntu, utilisez apt-get :

$ sudo apt-get install tmpreaper

Sur les systèmes basés sur RPM comme CentOS et RedHat, utilisez yum :

$ sudo yum -y install tmpreaper

Syntaxe de la commande Tmpreaper :

$ tmpreaper [options]  <time_spec> <dirs>

2. Supprimer les fichiers qui ont N jours de plus

Pour supprimer les fichiers antérieurs de 5 jours, utilisez « 5d » comme heure.

Par exemple, la commande suivante supprimera les fichiers du dossier ~/Downloads qui n'ont pas été consultés au cours des 5 derniers jours.

$ tmpreaper 5d ~/Downloads

3. Supprimer les fichiers non modifiés pendant N jours

Par défaut, tmpreaper supprimera les fichiers en fonction du "Temps d'accès". Vous pouvez utiliser l'option "-m" pour indiquer à tmpreaper de supprimer les fichiers en fonction de "l'heure de modification".

La commande suivante supprimera les fichiers qui ne sont pas modifiés pendant 5 jours dans le dossier Téléchargements.

$ tmpreaper -m 5d ~/Downloads

Vous pouvez également utiliser les caractères suivants pour le paramètre time_spec

  • d - pendant des jours
  • h – pendant des heures
  • m – pour minutes
  • s - pendant quelques secondes

4. Supprimer les liens symboliques en utilisant -s

Utilisez l'option -s pour supprimer également les liens symboliques, pas seulement les fichiers et les répertoires.

Outre le nettoyage des fichiers et des répertoires, la commande suivante nettoiera également les liens symboliques correspondant aux spécifications de temps données.

$ tmpreaper -s 5h ~/Downloads

5. Supprimez tous les types de fichiers à l'aide de l'option -a

Utilisez l'option -a pour supprimer tous les types de fichiers, pas seulement les fichiers normaux, les répertoires et les liens symboliques.

$ tmpreaper -a 5m ~/Downloads

6. Faites un essai - testez la suppression à l'aide de l'option -t

Utilisez l'option -t pour tester quels fichiers vont être supprimés.

Ceci est très utile lorsque vous l'exécutez sur un répertoire important et que vous voulez savoir exactement quels fichiers seront supprimés avant qu'ils ne soient vraiment supprimés.

Cette option ne supprime pas les fichiers.

$ tmpreaper -t 5d ~/Downloads
(PID 5415) Pretending to clean up directory `/home/lakshmanan/Downloads'.
(PID 5416) Pretending to clean up directory `.tmp_versions'.
(PID 5416) Back from recursing down `.tmp_versions'.

7. Forcer la suppression de fichiers à l'aide de l'option -f

Utilisez l'option -f pour forcer la suppression des fichiers. Normalement, les fichiers appartenant à l'utilisateur actuel (EUID) sans accès en écriture ne sont pas supprimés. L'utilisation de -f supprimera également ces fichiers.

$ tmpreaper -f 5h ~/Downloads

8. Ne supprimez pas les fichiers correspondant à un modèle à l'aide de l'option -protect

Utilisez –protect '' pour protéger les fichiers de correspondance de modèle contre la suppression.

Par exemple, la commande suivante supprimera tous les fichiers sauf les fichiers ".c".

$ tmpreaper  --protect '*.c' -t 5h ~/my_prg
Entry matching `--protect' pattern skipped. `hello.c'
Pretending to remove file `./.hello.o'.

9. Utiliser tmpreaper dans Cron

Par défaut, lorsque vous installez tmpreaper, il place une entrée dans crontab ( /etc/cron.daily/tmpreaper ). Il lira les options de /etc/tmpreaper.conf et exécutera la commande tmpreaper en fonction de ces options.

Le fichier /etc/tmpreaper.conf est explicite et facile à comprendre. Par défaut, il supprimera les fichiers datant de 7 jours dans /tmp, sauf certains types de fichiers. Si vous envisagez de l'utiliser, supprimez la ligne "SHOWWARNING=true" de /etc/tmpreaper.conf.

Une fois la ligne supprimée, tmpreaper s'exécutera quotidiennement pour nettoyer les répertoires spécifiés sans intervention de l'utilisateur.


Linux
  1. Comment effectuer une comparaison ligne par ligne de fichiers sous Linux à l'aide de la commande diff

  2. Comment gérer les fichiers journaux à l'aide de Logrotate sous Linux

  3. Comment trier des fichiers sous Linux à l'aide de la commande Sort

  4. calculer l'espace disque total utilisé par les fichiers de plus de 180 jours à l'aide de la recherche

  5. Comment créer un fichier tar pour des fichiers de plus de 7 jours à l'aide de scripts shell Linux

Comment trouver des fichiers en utilisant la ligne de commande dans le terminal Linux

Comment renommer des fichiers en utilisant la ligne de commande sous Linux

Comment supprimer des fichiers avec une extension spécifique sous Linux

Comment supprimer des fichiers plus anciens que les jours spécifiés sous Linux

Comment supprimer/supprimer des fichiers sous Linux à l'aide de la commande rm

Comment copier des fichiers sous Linux à l'aide de la commande CP