crontab

Comment puis-je définir le fuseau horaire pour les Crontabs?

Comment puis-je définir le fuseau horaire pour les Crontabs?
Crontab, une forme abrégée de table de cron, est à la fois une commande et un fichier texte dans les systèmes UNIX/Linux utilisé pour déterminer la planification des tâches Cron. Qu'est-ce qu'un travail Cron? Un travail Cron, également largement appelé simplement Cron, est un planificateur basé sur le temps qui exécute des tâches dans les systèmes Linux à des heures spécifiées. Il s'exécute à l'aide du démon crond Les travaux Cron sont extrêmement utiles pour automatiser les scripts Shell et d'autres commandes qui doivent être exécutées à intervalles réguliers, ce qui serait autrement fastidieux lorsqu'il est effectué manuellement.

Habituellement, les tâches Cron s'exécutent en utilisant l'heure locale définie dans le système. Cependant, vous préférerez peut-être exécuter le travail Cron dans un fuseau horaire différent sans nécessairement changer l'heure et la date de votre serveur.

Vous pouvez vérifier votre heure locale à l'aide de la commande timedatectl comme suit :

$ datedatectl

Vous pouvez également utiliser la commande date comme suit :

$ date

Alors, comment pouvez-vous définir un fuseau horaire différent pour vos Crontabs? Découvrons-le.

Comment définir le fuseau horaire pour les Crontabs

Dans votre système Linux local, les fuseaux horaires sont généralement spécifiés dans le /usr/share/zoneinfo annuaire. Le répertoire contient une liste des continents et des pays et leurs fuseaux horaires, comme indiqué ci-dessous.

$ ls /usr/share/zoneinfo/

Vous pouvez facilement ajuster le fuseau horaire actuel à un autre en utilisant la syntaxe indiquée. Par exemple, pour régler le système sur l'heure de Tokyo, au Japon, exécutez simplement :

$ sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

Cependant, vous ne pouvez pas modifier l'heure de votre système, en particulier lorsque plusieurs utilisateurs planifient différentes tâches Cron. Cela affecterait la durée d'exécution de leurs tâches Cron.

Heureusement, vous pouvez configurer un fuseau horaire spécifique pour votre tâche Cron comme suit :

Tout d'abord, vous devez exporter la variable TZ dans votre script Shell avant toute autre entrée Shell. Ensuite, accédez à votre crontab et utilisez la variable d'environnement crontab CRON_TZ au début du fichier crontab.

Supposons que je veuille configurer le travail Cron pour exécuter un script de sauvegarde à 14h20 tous les jours dans Europe/Londres l'heure et non mon heure locale. Mon heure locale est 2 heures en avance sur l'heure de Londres, donc à 14h20 à Londres, mon heure locale sera 16h20 ou 1420 HRS.

Tout d'abord, dirigez-vous vers le fichier de script Shell et exportez la variable TZ avant toute autre entrée de script. Découvrez ce que j'ai fait dans mon script Shell.

EXPORTER TZ=Europe/Londres

Enregistrez les modifications et quittez le script.

Ensuite, accédez à votre fichier crontab en exécutant la commande :

$ crontab -e

Assurez-vous de définir la variable crontab CRON_TZ avant toutes les autres entrées Cron comme suit.

CRON_TZ=Europe/Londres
20 14 * * * /home/james/backup.sh

Enregistrer et quitter le crontab. Pour être sûr des paramètres, vous pouvez lister la crontab à l'aide de la commande :

$ crontab -l

Ainsi, lorsque l'horloge a marqué 14h20, heure de Londres, ce qui correspond à 16h40 heure locale ou 1620 HRS, la sauvegarde a réussi.

Conclusion

Ce guide est une démonstration parfaite que vous pouvez réellement définir un fuseau horaire spécifié pour vos Crontabs sans changer l'heure de votre système. De cette façon, vous pouvez configurer différentes tâches à exécuter dans différents fuseaux horaires en fonction de vos besoins, par exemple, si vous souhaitez envoyer des e-mails aux abonnés d'un certain fuseau horaire à leur heure et non à votre heure locale.

Comment changer la taille, la couleur et le schéma du pointeur et du curseur de la souris sous Windows 10
Le pointeur et le curseur de la souris dans Windows 10 sont des aspects très importants du système d'exploitation. Cela peut également être dit pour d...
Moteurs de jeux gratuits et open source pour le développement de jeux Linux
Cet article couvrira une liste de moteurs de jeux gratuits et open source qui peuvent être utilisés pour développer des jeux 2D et 3D sur Linux. Il ex...
Tutoriel Shadow of the Tomb Raider pour Linux
Shadow of the Tomb Raider est le douzième ajout à la série Tomb Raider - une franchise de jeux d'action-aventure créée par Eidos Montréal. Le jeu a ét...