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
atpour 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.txtdoit exister et contenir le texteThis 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 minutepour 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 surCtrl+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 -epour 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.logdoit ê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 -eouvrira votre fichier crontab dans un éditeur de texte (généralementvi). - Le format pour une tâche cron s'exécutant chaque minute est
* * * * * commande_a_executer. - Si l'éditeur est
vi, appuyez suripour passer en mode insertion, saisissez votre ligne, appuyez surEscpour quitter le mode insertion, puis tapez:wqet 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.



