Planifier des tâches avec at et Cron

Red Hat Enterprise LinuxBeginner
Pratiquer maintenant

Introduction

En tant qu'administrateur système, l'automatisation des tâches est une responsabilité centrale. Les utilitaires at et cron sont des outils fondamentaux pour la planification de tâches sous Linux. Dans ce défi, vous allez vous exercer à utiliser at pour programmer un travail ponctuel et cron pour configurer une tâche récurrente.

Planifier une tâche ponctuelle avec at

La commande at permet de programmer l'exécution de commandes une seule fois à un moment précis dans le futur.

Tâches

  • Utiliser la commande at pour planifier une tâche qui s'exécutera dans une minute.
  • Vérifier que la tâche crée bien un fichier avec le contenu spécifié.

Exigences

  • Planifier une tâche pour qu'elle s'exécute dans une minute à partir de maintenant.
  • La tâche doit exécuter la commande echo "This is a scheduled task" > /home/labex/project/scheduled_task.txt.
  • Une fois la tâche exécutée, le fichier /home/labex/project/scheduled_task.txt doit exister et contenir le texte This is a scheduled task.

Exemple

Une fois la tâche terminée, le contenu de /home/labex/project/scheduled_task.txt doit être :

This is a scheduled task

Astuces

  • Utilisez la spécification temporelle now + 1 minute pour planifier la tâche.
  • Après avoir saisi la commande at, vous accéderez à une nouvelle invite de commande. Tapez votre commande et appuyez sur Entrée.
  • Pour enregistrer le travail et quitter l'invite at, appuyez sur Ctrl+D.

Planifier une tâche récurrente avec cron

Le démon cron est utilisé pour exécuter des commandes planifiées à intervalles réguliers. Vous pouvez gérer vos tâches planifiées à l'aide de la commande crontab.

Tâches

  • Créer une tâche cron qui exécute une commande chaque minute.
  • Vérifier qu'un fichier journal est créé et mis à jour par la tâche cron.

Exigences

  • Utiliser la commande crontab -e pour modifier la table cron de votre utilisateur.
  • Ajouter une tâche cron qui exécute la commande echo "This is a recurring task" >> /home/labex/project/recurring_task.log.
  • La tâche doit être configurée pour s'exécuter chaque minute de chaque heure, tous les jours.
  • Le fichier /home/labex/project/recurring_task.log doit être créé et complété par un nouveau texte chaque minute.

Exemple

Après quelques minutes de fonctionnement, le contenu de /home/labex/project/recurring_task.log devrait ressembler à ceci :

This is a recurring task
This is a recurring task
This is a recurring task

Astuces

  • La commande crontab -e ouvrira votre fichier crontab dans un éditeur de texte (généralement vi).
  • Le format pour une tâche cron s'exécutant chaque minute est * * * * * commande_a_executer.
  • Si l'éditeur est vi, appuyez sur i pour passer en mode insertion, saisissez votre ligne, appuyez sur Esc pour quitter le mode insertion, puis tapez :wq et Entrée pour sauvegarder et quitter.

Résumé

Dans ce défi, vous avez appris à automatiser des tâches sur un système Linux. Vous vous êtes exercé à planifier une exécution ponctuelle future avec la commande at et à mettre en place une tâche récurrente avec cron en modifiant une crontab. Ce sont des compétences essentielles pour tout administrateur système afin de gérer la maintenance de routine et d'autres processus automatisés.

✨ Vérifier la solution et pratiquer✨ Vérifier la solution et pratiquer