Re: supprimer fichiers logs auto
Le dimanche 3 juin 2007 15:10, Jacques L'helgoualc'h a écrit :
> > avec ça :
> > | #!/bin/sh
> > | find /var/log/* -type f -mtime +30 -exec rm -i '{}' ';'
>
> Heu, l'option « -i » de rm est interactive...
:-) , oui mon copié coller de test était un peu violent !
>
> > Puis dans /etc/cron.monthly : ln -s /root/shells/PurgeMensuelle.sh
>
> ... sans « .sh » ?
yep
>
> La commande find est récursive par défaut, donc (sans répertoires cachés
> dans /var/log/) « find /var/log/ ... » revient au même --- d'autant que
> la majeure partie du développement de /var/log/* est formée de noms de
> fichiers ordinaires.
vieux réflexes ....
>
> On peut aussi lancer moins de processus qu'avec -exec :
>
> find /var/log/ -type f -name '*log*.gz' -mtime +31 -print0 | \
> xargs --0 rm -f
je me méfie de cela, parfois cela peut déborder de la longueur maxi d'une
chaine 'shell', bien que dans le cas particulier de /var/log, ça devrait
passer
> Par ailleurs, il est sans doute préférable de réduire le nombre des logs
> en amont, cf. man logrotate : les exemples donnés,
>
> rotate 5
> weekly
>
> et
>
> rotate 2
> monthly
>
> devraient convenir à peu près.
on y pense jamais ;-) car c'est trop évident .....
Reply to: