Crontab à Linux

Crontab à Linux
Avec l'avènement des nouvelles technologies, nous voulons que tout soit automatisé, y compris nos systèmes informatiques. Par exemple, en tant qu'administrateur système, nous pouvons vouloir que notre sauvegarde soit exécutée tous les soirs à 2h00. Ensuite, quel est le but des ordinateurs si nous devons nous réveiller quotidiennement à 2h00 et exécuter les commandes manuellement pour initier la sauvegarde. Il devrait y avoir un moyen qui indique au système d'exécuter automatiquement une sauvegarde à un moment précis. Heureusement, Linux OS offre un utilitaire Cron qui permet d'automatiser les tâches à une période spécifique.

Cron est un utilitaire de ligne de commande efficace et populaire utilisé pour planifier un large éventail de tâches à un moment spécifié sans interaction utilisateur. Les tâches planifiées sont connues sous le nom d'emplois Cron tandis que le Crontab est la liste du fichier contenant les travaux CRON.

Dans cet article, nous expliquerons avec divers exemples d'exemples que vous pouvez modifier et utiliser le fichier Crontab afin de planifier des tâches dans le système Debian 10.

Cron peut être utilisé pour automatiser les tâches dans les scénarios suivants:

  • Sauvegardes du calendrier d'exécution,
  • Vérification de l'espace disque à un intervalle spécifique,
  • Exécution de la maintenance automatique,
  • Suppression périodique des fichiers indésirables,
  • Diagnostic de réseau en cours d'exécution

Syntaxe

Il est plus facile de travailler avec Cron, une fois que vous comprenez sa syntaxe. La syntaxe générale pour utiliser Cron est:

* * * * / Path / to / Script.shot

Chacun des champs correspond à ce qui suit:

Minute (0-59) heure (0-24) day_of_the_month (1-7) mois_of_the_year (1-12)
Day_of_the_week (0-6)

Installation de Cron

Cron est préinstallé dans Debian 10. Cependant, s'il manque à votre système, exécutez la commande suivante pour l'installer:

$ sudo apt install cron

Voir Crontab

Pour afficher le fichier crontab, utilisez la commande suivante:

$ crontab -l

Pour afficher le fichier crontab d'un utilisateur particulier, utilisez la commande suivante:

$ sudo crontab -u user -l

Modifier Crontab

Pour modifier le fichier crontab de l'utilisateur actuel:

$ crontab -e

Pour modifier le fichier crontab d'un utilisateur particulier:

$ sudo crontab -u utilisateur

Si vous modifiez le fichier Crontab pour la première fois, il vous sera demandé de choisir un éditeur:

Une fois que vous avez sélectionné l'éditeur, la fenêtre suivante apparaîtra.

Par exemple, vous souhaitez exécuter un script de sauvegarde nommé «Backup.sh ”situé au Documents Directory Daily à 2h00. Pour ce faire, vous devrez ajouter la ligne suivante dans votre fichier Crontab:

0 2 * * * / Documents / Sauvegarde.shot

Dans la fenêtre ci-dessus, vous pouvez ajouter vos travaux cron un par un. Une fois terminé, enregistrez et sortez du fichier après que tous les travaux Cron s'exécuteront automatiquement à leur intervalle spécifié.

Retirer Crontab

Pour supprimer le fichier crontab, entrez la commande suivante dans le terminal:

$ crontab -r

Permet maintenant d'une série d'exemples de travaux Cron sur une machine Linux.

Exécutez un travail cron chaque minute

Pour exécuter un travail cron chaque minute, ajoutez la ligne suivante dans votre fichier Crontab:

* * * * * * / path / to / script.shot

Exécutez un travail cron toutes les 10 minutes

Pour planifier un travail CRON à exécuter toutes les 10 minutes, ajoutez la ligne suivante dans votre fichier crontab.

* / 10 * * * * / path / to / script.shot

Exécutez un travail cron sur des mois spécifiques

Pour planifier un travail cron à exécuter sur des mois spécifiques E.g. Mars, août, décembre, ajoutez le travail cron dans votre fichier Crontab de la manière suivante:

* * * Jan, mai, août * / path / to / script.shot

Exécutez un travail cron les jours sélectionnés

Si vous souhaitez que votre travail cron soit exécuté les jours sélectionnés, supposons que le dimanche et le vendredi à 17 h, cela devrait ressembler à ce qui suit.

0 17 * * Sun, ven / chemin / vers / script.shot

Exécutez un travail Cron tous les jours à un moment précis

Pour planifier un travail cron pour exécuter quotidiennement à un moment précis, disons à 3 heures du matin, ajoutez cette ligne dans votre fichier Crontab.

0 3 * * * / path / to / script.shot

Exécutez un travail cron un jour spécifique

Pour planifier un travail cron à exécuter un jour spécifique, disons chaque dimanche, ajoutez cette ligne dans votre fichier crontab.

0 0 * * Sun / Path / To / Script.shot

Le travail se déroulera à 00h00 chaque dimanche.

Exécutez plusieurs tâches en un seul travail cron

Pour planifier plusieurs tâches dans un seul travail cron, ajoutez tous les scripts dans votre fichier crontab en les séparant avec un point-virgule.

* * * * * / path / to / script1.sh; / path / vers / script2.shot

Exécuter un travail cron sur chaque jour de la semaine

Pour planifier un travail cron à exécuter tous les jours de la semaine qui se trouve du lundi au vendredi, vous devrez ajouter cette ligne dans votre fichier Crontab.

0 0 * * 1-5 / Path / to / Script.shot

Le travail se déroulera à 00h00 chaque jour de la semaine.

Exécuter un travail cron deux fois par jour

Pour planifier un emploi pour courir deux fois par jour E.g. À 6 h et 15 h, vous devrez ajouter cette ligne dans votre fichier Crontab:

0 6,15 * * * / path / to / script.shot

Exécutez un travail cron toutes les heures

Pour planifier un travail cron pour exécuter toutes les heures à la minute 0, vous devrez ajouter cette ligne dans votre fichier Crontab:

0 * * * * / path / to / script.shot

Par exemple, si l'heure actuelle est 14 h, le travail fonctionnera sur 15 h, 16 h 00 et ainsi de suite.

Exécutez un travail cron toutes les 3 heures

Pour planifier un travail CRON à fonctionner toutes les 3 heures à la minute 0, vous devrez ajouter cette ligne dans votre fichier Crontab:

0 * / 3 * * * / path / to / script.shot

Par exemple, si l'heure actuelle est 14 h, le travail fonctionnera sur 17 h 00, 20 h 00 et ainsi de suite.

Exécutez Cron Job à 16h00 le premier de chaque mois

Pour planifier un emploi pour exécuter la journée en premier de chaque mois à 16h00, vous devrez ajouter cette ligne dans votre fichier Crontab:

0 16 1 * * / Path / To / Script.shot

Strings à Crontab

Vous pouvez également utiliser les chaînes suivantes plutôt que les longues commandes répétitives.

@ HEUX - COURANT CRON JOB toutes les heures.e. "0 * * * *"
@ minuit - Courez du travail cron tous les jours je.e. "0 0 * * *"
@ quotidien - Identique à minuit
@ hebdomadaire - exécutez le travail cron chaque semaine, je.e. "0 0 * * 0"
@ mensuel - Exécutez un travail cron chaque mois je.e. "0 0 1 * *"
@ annuellement - Exécutez du travail cron chaque année je.e. "0 0 1 1 *"
@ annuel - comme @annial
@ redémarrer - Exécutez le travail cron à chaque démarrage

Par exemple, pour exécuter le travail cron tous les jours à la première minute et à la première heure, ajoutez la ligne suivante:

@daily / path / to / script.shot

Par exemple, pour exécuter le travail cron chaque fois que le serveur est redémarré:

@reboot / path / to / script.shot

C'est tout ce qu'il y a! Dans cet article, nous avons appris à automatiser diverses tâches en utilisant Crontab dans le système Debian. En utilisant les exemples ci-dessus, vous pouvez planifier tout type de travail pour initier sans aucune interaction utilisateur.