GNU/Linux >> Tutoriels Linux >  >> Linux

Crontab Reboot :comment exécuter une tâche automatiquement au démarrage

Présentation

Le démon Cron est un utilitaire Linux utilisé pour planifier les tâches et les processus système. Il utilise des tables cron (crontab) pour stocker et lire les tâches planifiées.

Ce didacticiel explique comment vous pouvez utiliser crontab pour planifier des tâches à exécuter au redémarrage du système.

Prérequis

  • Un système exécutant Linux
  • Accès à une ligne de commande/fenêtre de terminal
  • Un compte utilisateur avec des privilèges root ou sudo

Présentation des commandes Crontab

Avec la crontab commande, vous avez un contrôle total sur le moment et la manière dont les travaux sont exécutés. Utilisez crontab pour définir le temps d'exécution du travail à la minute près, sans avoir besoin d'une boucle et d'une logique de synchronisation dans la tâche.

crontab a de faibles besoins en ressources car il ne réserve pas de mémoire système lorsqu'il n'est pas en cours d'exécution.

Crontab au démarrage :exécuter une tâche Cron au démarrage

Ouvrez la liste des tâches périodiques à l'aide de la commande suivante :

crontab -e

Si plusieurs éditeurs de texte sont installés, le système vous invite à sélectionner un éditeur avec lequel mettre à jour la liste des tâches périodiques. Utilisez le nombre entre parenthèses pour choisir votre option préférée. Nous utiliserons l'option par défaut, Nano.

Pour exécuter une tâche cron à chaque démarrage du système, ajoutez une chaîne appelée @reboot à la fin de la liste des tâches. Le travail défini par cette chaîne s'exécute au démarrage, immédiatement après le redémarrage de Linux.

Utilisez la syntaxe suivante lors de l'ajout d'un @reboot chaîne :

@reboot [path to command] [argument1] [argument2] … [argument n]
@reboot [part to shell script]

Appuyez sur Control + X pour quitter Nano, puis Y et Enter pour enregistrer les modifications que vous avez apportées.

Par exemple, si nous voulions que la date système soit écrite dans un fichier appelé date.txt au redémarrage de Linux, nous ajouterions la chaîne suivante :

@reboot date >> ~/date.txt

Si nous voulions exécuter le shell de sauvegarde au redémarrage, nous ajouterions :

@reboot /root/backup.sh

Exécuter une tâche Cron au démarrage avec délai

Pour exécuter une tâche avec un délai après le redémarrage du système, utilisez la commande sleep lors de l'ajout de @reboot chaîne :

@reboot sleep [time in seconds] && [path to job]

Si vous souhaitez créer un fichier texte avec la date système cinq minutes après le redémarrage, ajoutez :

@reboot sleep 300 && date >> ~/date.txt

Supprimer une commande de redémarrage

Chaque @reboot chaîne que vous ajoutez à la liste des tâches périodiques exécute une tâche à chaque redémarrage de Linux. Si vous ne souhaitez plus exécuter une tâche, supprimez-la de la liste des tâches.

Pour cela, ouvrez la liste des tâches en utilisant le crontab -e commande. Faites défiler vers le bas pour passer en revue les tâches que vous avez ajoutées.

Pour supprimer une tâche de la liste, supprimez la ligne appropriée de la chaîne appropriée. Appuyez sur Control + X pour quitter Nano, puis Y et Enter pour enregistrer les modifications.


Linux
  1. Comment exécuter `date` à l'intérieur d'un travail d'onglet Cron ?

  2. Comment fonctionnent plusieurs chargeurs de démarrage sur une partition système Efi ?

  3. Comment programmer un redémarrage nocturne ?

  4. Comment :gérer les journaux système avec Journalctl

  5. Comment exécuter le travail crontab chaque semaine le dimanche

Comment démarrer Linux Mint 20 en mode Rescue / Urgence

Comment redémarrer Ubuntu 20.04 LTS

Comment redémarrer CentOS 8

Comment exécuter une tâche Crontab chaque semaine le dimanche

Comment vérifier/réparer le système de fichiers Linux au démarrage

Comment vérifier l'historique de redémarrage du système et l'heure de démarrage sous Linux