Tutoriel d'exemple Linux Systemd Crontab : Comment nettoyer régulièrement les journaux système
1 Introduction
Dans les systèmes Linux, les fichiers journaux système sont l'un des fichiers clés qui enregistrent l'état de fonctionnement du système, les erreurs et d'autres informations importantes. Au fil du temps, les fichiers journaux du système peuvent augmenter en taille et occuper beaucoup d'espace disque. Afin de maintenir le fonctionnement normal du système, il est nécessaire de nettoyer régulièrement le journal système. Cet article présentera en détail comment utiliser Systemd Crontab pour nettoyer régulièrement les journaux système et fournira des exemples de code spécifiques.
2. Utilisez Systemd Crontab pour exécuter des scripts régulièrement
Systemd Crontab est un outil de gestion de services basé sur les systèmes Linux qui peut être utilisé pour exécuter des tâches régulièrement. Voici les étapes spécifiques pour utiliser Systemd Crontab pour exécuter des scripts régulièrement :
Tout d'abord, nous devons créer un script pour nettoyer le journal système. Il peut être écrit en utilisant un langage de script shell. Voici un exemple de script pour nettoyer les journaux (clean_logs.sh) :
#!/bin/bash # 清理/var/log目录下的系统日志文件 find /var/log -type f -name "*.log" -exec rm -rf {} ; # 重启系统日志服务 systemctl restart rsyslog
Le script ci-dessus utilise la commande find pour rechercher tous les fichiers journaux dans le répertoire /var/log et utilise le Commande rm pour supprimer ces fichiers. Enfin, utilisez la commande systemctl pour redémarrer le service rsyslog afin de vous assurer que la fonction de journal système est normale.
Ensuite, nous devons créer un fichier d'unité de service Systemd pour définir le script à exécuter. Créez un fichier nommé clean_logs.service avec le contenu suivant :
[Unit] Description=Clean system logs [Service] ExecStart=/path/to/clean_logs.sh [Install] WantedBy=default.target
Vous devez remplacer le chemin d'ExecStart par le chemin réel du script.
Créez un fichier de configuration Systemd Crontab nommé clean_logs.timer dans le répertoire /etc/systemd/system/ avec le contenu suivant :
[Unit] Description=Run clean_logs.service every day [Timer] OnCalendar=daily Persistent=true [Install] WantedBy=timers.target
Dans le fichier de configuration ci-dessus, OnCalendar définit une tâche L'heure d'exécution est définie pour être exécutée une fois par jour. Persistant défini sur true signifie que même si le système est arrêté, la tâche continuera à s'exécuter au prochain démarrage.
Après avoir terminé les étapes ci-dessus, vous pouvez suivre les commandes suivantes pour démarrer et gérer les tâches planifiées :
Démarrer les tâches planifiées : systemctl start clean_logs.timer
Arrêter les tâches planifiées : systemctl stop clean_logs. timer
Redémarrer la tâche planifiée : systemctl restart clean_logs.timer
Afficher l'état de la tâche planifiée : systemctl status clean_logs.timer
3. Afficher les résultats de l'exécution de la tâche planifiée
Une fois l'exécution de la tâche planifiée terminée, nous j'espère voir les résultats de l'exécution de la tâche pour confirmer si le journal système a été nettoyé avec succès. Il peut être consulté des deux manières suivantes :
Afficher le journal Systemd Crontab : journalctl -u clean_logs.timer
Afficher le fichier journal système : tail -n 100 /var/log/syslog
Quatre Résumé
L'utilisation de Systemd Crontab est. pratique Nettoyez régulièrement les journaux du système pour éviter que l'espace disque ne soit occupé par des fichiers journaux trop volumineux. Cet article présente en détail comment utiliser Systemd Crontab pour nettoyer régulièrement les journaux système à travers des exemples de code spécifiques. J'espère que cet article pourra vous aider et vous permettre de mieux gérer les fichiers journaux de votre système Linux.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!