


Méthodes et étapes pour implémenter la rotation des journaux à l'aide de Systemd et Crontab sous Linux
Sep 26, 2023 pm 07:04 PMTitre : Méthodes et étapes pour implémenter la rotation des journaux à l'aide de Systemd et Crontab sous Linux
Texte :
Dans un système Linux, les fichiers journaux enregistrent les événements importants et les informations d'erreur qui se produisent dans le système au fil du temps, Log. les fichiers deviendront de plus en plus volumineux, occupant non seulement de l'espace sur le disque dur, mais rendant également difficile la visualisation des journaux. Afin de résoudre ce problème, nous pouvons utiliser Systemd et Crontab pour implémenter la rotation des journaux, c'est-à-dire sauvegarder et archiver régulièrement les fichiers journaux. Cet article explique comment utiliser Systemd et Crontab pour implémenter les méthodes et étapes de rotation des journaux et fournit des exemples de code spécifiques.
1. Utilisez Systemd pour implémenter la rotation des journaux
- Créez un fichier de configuration de rotation des journaux
Tout d'abord, nous devons créer un fichier de configuration de rotation des journaux Systemd. Saisissez la commande suivante dans le terminal pour créer un fichier de configuration nommé "myapp-logrotate.conf" :
sudo nano /etc/systemd/journald.conf.d/myapp-logrotate.conf
Ajoutez le contenu suivant dans le fichier de configuration :
[Journal] Storage=persistent MaxFileSec=1month
Parmi eux, le paramètre "Storage" précise la méthode de stockage des le fichier journal, « persistant » signifie conserver le fichier journal sur le disque. Le paramètre "MaxFileSec" précise la durée de conservation des fichiers journaux, qui est ici fixée à 1 mois.
Enregistrez et quittez le profil.
- Redémarrez le service de journalisation Systemd
Entrez la commande suivante dans le terminal pour redémarrer le service de journalisation Systemd :
sudo systemctl restart systemd-journald.service
Maintenant, Systemd fera pivoter les fichiers journaux en fonction des paramètres du fichier de configuration.
2. Utilisez Crontab pour implémenter la rotation des journaux
- Créez un script de rotation des journaux
Ensuite, nous devons créer un script de rotation des journaux Crontab. Créez un fichier de script nommé "logrotate-script.sh" en entrant la commande suivante dans le terminal :
sudo nano /usr/local/bin/logrotate-script.sh
Collez le code suivant dans le fichier de script :
#!/bin/bash # 日志文件路径 logfile="/var/log/myapp/myapp.log" # 归档目录路径 archive_dir="/var/log/myapp/archive" # 归档文件名 archive_file="myapp_$(date +'%Y%m%d%H%M%S').log" # 压缩归档文件 tar -czvf $archive_dir/$archive_file $logfile # 清空日志文件 > $logfile
Enregistrez et quittez le fichier de script.
- Accorder l'autorisation d'exécution au script
Entrez la commande suivante dans le terminal pour accorder l'autorisation d'exécution au script :
sudo chmod +x /usr/local/bin/logrotate-script.sh
- Créer une tâche Crontab
Enfin, nous devons créer une tâche Crontab pour exécuter régulièrement le script de rotation des journaux . Entrez la commande suivante dans le terminal pour modifier la Crontab :
crontab -e
Ajoutez le contenu suivant dans le fichier Crontab :
# 每天的凌晨0点执行日志轮转脚本 0 0 * * * /usr/local/bin/logrotate-script.sh
Enregistrez et quittez le fichier Crontab.
Maintenant, Crontab exécutera le script de rotation des journaux à 0h du matin tous les jours pour archiver et effacer les fichiers journaux.
Résumé :
Grâce aux méthodes et étapes ci-dessus, nous pouvons utiliser Systemd et Crontab pour implémenter la rotation des journaux. Vous pouvez utiliser Systemd pour définir la durée de conservation des fichiers journaux et utiliser Crontab pour exécuter régulièrement des scripts de rotation des journaux pour archiver et effacer les fichiers journaux. Grâce à une configuration et une utilisation raisonnables, nous pouvons gérer et maintenir efficacement les fichiers journaux du système.
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!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Connaissez-vous quelques raisons pour lesquelles les tâches planifiées de crontab ne sont pas exécutées ?

Compréhension approfondie de la configuration de log4j : mise en œuvre de stratégies de rotation et de sauvegarde des journaux

Comment utiliser Systemd et Crontab pour implémenter l'exécution parallèle de tâches dans les systèmes Linux

Comment résoudre les pièges de Linux commentant les fichiers crontab et crontab exécutant sh

Comment compiler Mysql5.7.11 via Systemd

Comment lire le journal des erreurs Linux crontab

Comment redémarrer automatiquement les applications sous Linux à l'aide de Systemd et Crontab

Comment utiliser Systemd et Crontab pour définir la priorité des tâches planifiées dans le système Linux
