Créer un cron job pas-à-pas (exemples concrets)

Si vous gérez un serveur ou un site web, l’automatisation change la routine quotidienne. Un cron job permet d’exécuter des commandes automatiquement selon un horodatage précis.

La programmation tâche via crontab est présente sur la plupart des systèmes Unix et Linux. Les points essentiels suivent dans « A retenir : ».

A retenir :

  • Sauvegardes nocturnes automatiques des bases de données et fichiers critiques
  • Rotation des logs et purge régulière des fichiers temporaires
  • Surveillance d’exécution et alertes instantanées en cas d’échec
  • Centralisation des tâches pour plusieurs serveurs avec interface de suivi

Crontab et syntaxe pour programmer une tâche récurrente

Après ces repères, abordons crontab et la syntaxe pour programmer une tâche récurrente. Cette section détaille le format des cinq champs et l’usage des opérateurs classiques.

Champ Plage Exemple
Minute 0-59 0, */15
Heure 0-23 2, 8-18
Jour du mois 1-31 1, */7
Mois 1-12 1,6,12
Jour de la semaine 0-7 (0=dimanche) 1-5

Le tableau ci-dessus clarifie chaque champ du crontab et ses plages valides. Selon IT-Connect, comprendre ces champs évite des erreurs fréquentes en ligne de commande.

A lire également :  Scripts post-install : automatiser vos réglages en 10 minutes

La suite porte sur les script shell et les exemples concrets de mise en œuvre, avec bonnes pratiques et logs. Ces bonnes pratiques préparent l’usage de solutions centralisées pour l’échelle supérieure.

Écrire un script shell fiable pour sauvegarde automatique

Ce point montre comment créer un script shell fiable pour les sauvegardes automatiques. Nous détaillons les commandes, le format de nommage, et les permissions nécessaires.

Un script simple utilise mysqldump, la date dans le nom et la redirection vers un journal. Testez toujours la commande en ligne de commande avant automatisation.

Étapes sauvegarde script :

  • Créer le script bash avec shebang et droits d’exécution
  • Tester manuellement la commande mysqldump avant automatisation
  • Placer les backups dans un dossier avec rotation
  • Ajouter redirection vers log pour suivi et débogage

« J’ai automatisé les sauvegardes de mon e-commerce et j’ai récupéré des données après une panne. »

Lucas N.

Insérer la ligne de commande dans crontab et vérifier

Ce volet explique comment insérer la ligne de commande dans le fichier crontab de l’utilisateur. Nous montrons les commandes crontab -e, crontab -l et crontab -r pour la gestion.

Pour la redirection des erreurs, utilisez >> log.txt 2>&1 pour rassembler stdout et stderr. Selon Hostinger, la redirection évite l’envoi d’erreurs non filtrées par email.

A lire également :  Accélérer les performances de son système Linux

Exemples cron pratiques :

  • 0 2 * * * /usr/bin/mysqldump -u root … >> /var/log/backup.log 2>&1
  • 0 3 * * 0 rm -rf /tmp/* >> /var/log/cleanup.log 2>&1
  • */60 * * * * /usr/bin/php /var/www/html/stats.php >> /var/log/stats.log 2>&1
  • 0 9 * * 1 /usr/bin/php /var/www/html/send_newsletter.php >> /var/log/news.log 2>&1

« J’utilise une crontab utilisateur pour des tâches non sensibles et la maintenance en a gagné. »

Sophie N.

Cas concrets : sauvegarde, purge et surveillance en pratique

Après l’usage basique des cron job, examinons des cas concrets plus opérationnels et réplicables. Ces exemples utilisent scripts, logs et notifications pour gagner en fiabilité.

Selon LWS, l’automatisation réduit le risque d’oubli et maintient la disponibilité des services critiques. Voyons deux cas détaillés et leur orchestration pratique.

Sauvegarde automatique pas-à-pas (exemple concret)

Ce cas montre l’usage d’un script shell déclenché chaque nuit via crontab pour sauvegarder MySQL. L’exemple utilise mysqldump et une redirection vers un journal centralisé.

Bonnes pratiques :

  • Stocker les backups sur un disque séparé ou dans le cloud
  • Chiffrer les dumps sensibles avant transfert
  • Mettre en place une rotation et suppression après retention
  • Valider régulièrement l’intégrité des archives de sauvegarde

« La sauvegarde automatique m’a évité plusieurs incidents lors d’une corruption de base. »

Marc N.

A lire également :  Comment utiliser une clé USB bootable pour tester Linux

Vérification d’un site et alertes disque

Ce exemple emploie curl dans un cron job pour vérifier le code HTTP et alerter en cas d’anomalie. La planification fréquente permet une détection rapide des interruptions.

Cas d’usage Expression Cron Commande Fréquence
Ping site */5 * * * * curl -Is https://exemple | head -n 1 Toutes les 5 minutes
Vérif. disque */30 * * * * /usr/bin/php /var/www/check_disk.php Toutes les 30 minutes
Nettoyage /tmp 0 3 * * 0 rm -rf /tmp/* Hebdomadaire
Rapport hebdo 0 9 * * 1 /usr/bin/php /var/www/rapport.php Chaque lundi

Ces scénarios combinent surveillance et actions correctives, et préparent la montée en charge. Le prochain volet détaille l’usage d’une plateforme de centralisation.

Gérer plusieurs serveurs avec CronMaster et centralisation

Après la routine opérationnelle, montez en échelle avec CronMaster pour centraliser vos cron job. La centralisation facilite la surveillance, l’alerte et l’historique des exécutions.

Selon Hostinger, les tableaux de bord centralisés réduisent le temps de diagnostic et augmentent la fiabilité des tâches récurrentes. Voyons l’installation et la configuration de base.

Installer et configurer CronMaster pas-à-pas

Ce point décrit l’installation depuis le dépôt, la création de la base MySQL et la configuration du fichier config.php. Les commandes git et SQL permettent une mise en place reproductible.

Configuration base données :

  • git clone https://github.com/your-repo/cronmaster.git
  • Créer la base cronmaster et l’utilisateur cronuser
  • Importer database.sql via mysql -u cronuser -p cronmaster
  • Éditer config.php avec les paramètres de connexion

« CronMaster m’a fait gagner du temps et m’a évité des vérifications manuelles. »

Alex N.

Surveillance, alertes et historique centralisé

Ce volet montre comment ajouter une tâche, activer les notifications et consulter l’historique des exécutions. L’interface conserve logs et statuts pour faciliter le débogage.

Dans CronMaster, renseignez le nom, la commande, la fréquence et les notifications. L’outil envoie des alertes si une tâche n’atteint pas le succès attendu.

Source : « Cron Job : qu’est-ce que c’est et comment le configurer en 2025 », Hostinger ; « Crontab et Cron : guide d’utilisation sous Linux », IT-Connect ; « Cron Job : Guide complet pour les débutants », LWS.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut