Vous avez configuré vos serveurs et ils tournent comme des horloges depuis des mois. Bien entendu vous les monitorez grace à votre nagios favori. Et puis un beau jour, vous recevez des alertes vous indiquant que le taux de remplissage des disques durs a atteint un niveau critique.
Au fur et à mesure du temps qui passe, votre partition système s’est remplie avec de nombreux logs systèmes et applicatifs dont certains peuvent être très bavard. C’est notamment le cas des logs apache ou nginx pour les visites de vos serveurs web mais aussi des logs php_errors ou du fichier mysql-slow.log pour mysql.
Cette petite ligne de commande va vous faciliter la tâche en vous débarrassant de ces logs encombrants
Même si vos serveurs sont configurés pour effectuer une rotation des logs, quotidienne, hebdomadaire ou mensuelle, les anciens fichiers peuvent demeurer sur le serveur pendant des mois. Il peut donc être nécessaire de nettoyer ces anciens logs qui ont pour extension « .xx.gz » ou encore .1, .2, .3 …
Par l’intermédiaire de la commande suivante, vous allez effacer en une passe les logs possédant ces extensions dans le répertoire /var/log de votre serveur linux.
find /var/log/ \( -iregex ".*\.[0-9]+" -o -iname "*.gz" \) -exec rm {} \;
Votre espace disque devrait donc revenir à un niveau correct assez rapidement.
Vous pouvez également programmer cette ligne dans votre crontab pour nettoyer automatiquement vos anciens logs à intervalle régulier
Excellent, cela nettoie effectivement mes logs.
Merci pour l’info.
Marc
Hugues F4FXO.
Bonjour à tous, comment analyser cette commande ?
Cordialités, Hugues FE2211 F4FXO.