4 façons de vérifier si cron fonctionne sous Linux

cron est un planificateur de tâches pour les systèmes d’exploitation Linux et de type Unix. Il est préinstallé sur toutes les distributions Linux et convient parfaitement à l’automatisation des tâches répétitives.

Pour que cron fonctionne correctement, vous devez vérifier périodiquement que l’utilitaire fonctionne correctement sur votre système. Vous pouvez le faire de quatre manières différentes, notamment en vérifiant l’état du service cron, en examinant les journaux cron, en exécutant une tâche cron de test et en répertoriant les processus en cours d’exécution sur votre système.

Qu’est-ce que cron ?

Le gestionnaire de tâches silencieux, cron, automatise et planifie les tâches système. Les utilisateurs qui configurent et maintiennent des environnements logiciels utilisent cron pour planifier des tâches telles que des commandes ou des scripts shell (également appelés tâches cron) pour qu’elles s’exécutent périodiquement à des heures ou à des intervalles fixes.

cron automatise les tâches de maintenance ou d’administration du système que vous devrez peut-être effectuer fréquemment.

Il existe plusieurs implémentations disponibles sur Linux. La version dont vous disposerez dépend de votre distribution. «Vixie cron», du nom de son développeur d’origine, Paul Vixie, est courant et constitue la valeur par défaut sur Debian et Ubuntu. Arch n’a aucune version de cron en faveur des minuteries systemd.

cronie est un fork de Vixie cron disponible sous forme de package Arch standard. Pour l’installer, utilisez pacman :

 sudo pacman -S cronie 

Ensuite, démarrez et activez-le avec :

 sudo systemctl start cronie.service
sudo systemctl enable cronie.service

Vous pouvez voir quelle version de cron est installée sur votre système en consultant sa page de manuel :

 man cron 

Comment vérifier si cron fonctionne sous Linux

Voici quelques façons de vérifier si cron fonctionne correctement :

  Comment enregistrer des appels Skype sur Linux à l'aide d'OpenBroadcaster

1. Vérifiez l’état du service cron sous Linux

Une façon de vérifier si cron fonctionne consiste à vérifier l’état du service cron en exécutant une commande Linux de base. Ouvrez le terminal Linux en appuyant sur Ctrl + Alt + T et utilisez la commande systemctl pour vérifier l’état de cron :

 sudo systemctl status cron 

Si vous voyez le résultat suivant, cela signifie que cron est actif et fonctionne correctement sur votre système.

Mais que se passe-t-il si cron est dans un état inactif comme indiqué ci-dessous ?

Vous pouvez démarrer le service comme ceci :

 sudo systemctl start cron.service 

Après avoir démarré le service cron, activez-le pour qu’il démarre à chaque redémarrage du système :

 sudo systemctl enable cron.service 

2. Vérifiez les journaux cron sous Linux

Une autre façon de vérifier si cron fonctionne correctement consiste à examiner les fichiers journaux. les journaux cron sont stockés dans le répertoire /var/log/syslog sous Linux.

syslog est un protocole que les systèmes Linux utilisent pour centraliser les journaux de données d’événements. Les journaux sont ensuite accessibles pour effectuer des audits, une surveillance, un dépannage, des rapports et d’autres tâches opérationnelles informatiques nécessaires.

Vous pouvez voir les journaux des tâches cron dans le fichier syslog en exécutant la commande suivante :

 grep 'cron' /var/log/syslog 

Vous verrez une sortie similaire indiquant que cron fonctionne correctement et que ses journaux sont stockés dans le fichier journal :

Comme le dossier Syslog contient d’autres journaux système ainsi que les journaux cron, il peut être un peu délicat d’examiner uniquement les journaux liés au cron dans le fichier. Vous pouvez résoudre ce problème en créant un fichier journal distinct qui stocke uniquement les entrées cron qui apparaissent dans le fichier syslog.

  Les 5 meilleurs outils d'édition de balises MP3 pour Linux

Dans cet exemple, nous utiliserons l’éditeur nano, mais vous pouvez utiliser n’importe quel éditeur avec lequel vous vous sentez à l’aise.

Ouvrez le fichier suivant à l’aide de nano :

 nano /etc/rsyslog.d/50-default.conf 

Localisez la ligne qui commence par :

 #cron.* 

Décommentez cette ligne en supprimant le signe dièse (#). Ensuite, enregistrez et quittez le fichier en appuyant sur Ctrl + X, puis appuyez sur Y et appuyez sur Entrée.

Redémarrez le service rsyslog en exécutant cette commande :

 sudo service rsyslog restart 

Vous recevrez désormais les journaux dans le fichier cron.log situé dans le répertoire /var/log.

Si votre terminal ne parvient pas à récupérer les journaux, cela peut signifier que cron n’est pas en cours d’exécution. Dans ce cas, confirmez si cron fonctionne ou n’utilise pas d’autres méthodes.

3. Exécuter une tâche cron sous Linux

Vous pouvez également vérifier si cron fonctionne en créant simplement une tâche cron de test et en l’exécutant. Si le travail réussit à accomplir la tâche, cela signifie qu’il fonctionne correctement.

Vous devez d’abord créer un script Bash. Les scripts Bash vous permettent d’automatiser les tâches quotidiennes sous Linux.

Créons un script Bash qui affichera « mon travail cron fonctionne ! » dans un fichier TXT. Pour créer le fichier, recherchez d’abord votre répertoire de travail actuel à l’aide de cette commande :

 pwd 

Créez un fichier dans le répertoire courant à l’aide de la commande touch :

 touch file.txt 

Après cela, créez un fichier Bash en utilisant nano :

 nano script.sh 

Ajoutez le contenu suivant au fichier :

 #! /usr/bin/bash
echo "my cronjob is working!" >> /home/username/file.txt

Assurez-vous de fournir l’emplacement correct du fichier texte que vous avez créé. Enregistrez et quittez le fichier en appuyant sur Ctrl + X, puis Y, et appuyez sur Entrée.

Donnez les autorisations d’exécution au script Bash :

 chmod +x script.sh 

Créez maintenant une tâche cron pour exécuter le script. Pour ce faire, ouvrez le fichier crontab avec :

 crontab -e 

Entrez la ligne suivante à la fin du fichier.

 * * * * * /path/to/script.sh 

Les cinq astérisques correspondent à l’heure d’exécution, dans laquelle le premier astérisque représente les minutes (0-59), le second représente les heures (en 24 heures, donc 13h00 est 13, minuit commence à 0), le le troisième astérisque signifie le jour (0-7, 0 et 7 sont dimanche), le quatrième indique le mois et le dernier astérisque indique l’année.

  Comment installer la station de travail audio Tracktion sous Linux

Le nom du fichier exécutable et son chemin sont également mentionnés dans le fichier.

Après avoir enregistré et fermé le fichier, vous verrez un message « crontab : installation d’une nouvelle crontab » sur le terminal.

Pour vérifier si la tâche cron a fonctionné ou non, allez dans le répertoire du fichier.txt et imprimez son contenu sur le terminal en utilisant cat :

 cat file.txt 

Cela indique que cron fonctionne correctement.

4. Vérifiez les processus en cours d’exécution sous Linux

Une autre façon de vérifier si le démon cron fonctionne consiste à répertorier les processus en cours d’exécution sur votre système. Vous pouvez y parvenir en utilisant la commande ps. Le démon cron apparaîtra dans la sortie sous le nom crond.

 ps aux | grep cron 

Cela confirme que le processus cron est en cours d’exécution sur votre système Linux.

Automatisez et planifiez les tâches système avec cron

cron est l’un des utilitaires les plus essentiels sous Linux qui permet au système de fonctionner efficacement. Parfois, vous devez vérifier si cron fonctionne lors du dépannage des problèmes du système.

Vous pouvez y parvenir en vérifiant les journaux cron ou en voyant les processus en cours d’exécution sur votre système. Vous pouvez également vérifier l’état cron à l’aide de l’utilitaire systemctl. En plus de cela, l’exécution d’une tâche cron de test peut également vous indiquer si le service est en cours d’exécution ou non.

Le bon fonctionnement de cron vous permet d’automatiser et de planifier les tâches quotidiennes du système. La plupart des tâches cron sont automatiquement créées par les applications installées. L’automatisation et la planification des tâches améliorent les performances globales du système et le maintiennent en bonne santé.