Sous Linux, il est essentiel d'avoir quelques notions de base lorsqu'il s'agit de changer le fuseau horaire .
Le fuseau horaire est un paramètre défini lors de l'installation et qui détermine la date actuelle pour votre hôte.
Définir un fuseau horaire correct est crucial :vos serveurs web et applicatifs peuvent s'appuyer sur cette date pour la désérialisation par exemple.
Par conséquent, vous souhaitez définir le fuseau horaire sur une information qui reflète le fuseau horaire dans lequel vous vous trouvez actuellement.
Sur Debian 10, il y a trois manières de changer le fuseau horaire :
- En utilisant le timedatectl commande avec la commande set-timezone options
- En créant un lien symbolique depuis votre /etc/localtime vers le bon fuseau horaire .
- En utilisant la variable d'environnement TZ
Prérequis
Pour changer votre fuseau horaire sur Debian 10, vous devez disposer des privilèges sudo sur votre hôte.
Modifier le fuseau horaire à l'aide de timedatectl
Le moyen le plus rapide de modifier le fuseau horaire est d'utiliser la commande timedatectl .
Affichage de votre fuseau horaire actuel
Pour voir le fuseau horaire actuel utilisé sur votre hébergeur, exécutez la commande suivante
$ timedatectl
Notez qu'il est équivalent d'exécuter la commande avec le statut option.
$ timedatectl status
Comme vous pouvez le voir, on vous présente l'heure locale (l'heure de votre fuseau horaire), l'heure universelle, l'heure RTC mais surtout le fuseau horaire.
Actuellement, mon fuseau horaire est défini sur Amérique/New York.
Afin de voir tous les fuseaux horaires disponibles sur votre distribution, exécutez la commande suivante
$ timedatectl list-timezones
Si vous avez déjà une idée du fuseau horaire que vous souhaitez sélectionner, vous pouvez affiner vos résultats pour identifier le fuseau horaire correspondant exact.
$ timedatectl list-timezones | grep Paris
Définir un nouveau fuseau horaire
Pour définir le fuseau horaire actuel, utilisez le set-timezone option avec le fuseau horaire comme argument.
$ timedatectl set-timezone Europe/Paris
Pas besoin de redémarrer les services, votre fuseau horaire sera modifié immédiatement.
Pour le vérifier, vous pouvez relancer la commande timedatectl, ou une simple commande date.
$ timedatectl
$ date
Modifier le fuseau horaire en créant un lien symbolique
La deuxième méthode pour passer au fuseau horaire consiste à créer un lien symbolique depuis votre /etc/localtime vers les fuseaux horaires prédéfinis disponibles sur votre hôte.
Si vous souhaitez en savoir plus sur les liens matériels et logiciels sous Linux, lisez le guide complet !
Il s'agit d'une ancienne méthode, et tout devrait bien se passer en exécutant simplement timedatectl. Mais au cas où vous auriez besoin de créer un lien symbolique, voici comment procéder.
Par défaut, les fuseaux horaires sont stockés dans /usr/share/zoneinfo répertoire de votre hébergeur.
Voici par exemple le contenu du dossier Europe
Vous pourrez changer votre fuseau horaire en pointant votre localdate vers l'un de ces fichiers.
Pour ce faire, exécutez la commande suivante
$ sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
Pour vérifier que vos modifications ont été correctement appliquées, assurez-vous d'exécuter la commande date.
$ date
Modifier le fuseau horaire à l'aide de la variable d'environnement TZ
Tout d'abord, afin de déterminer le fuseau horaire qui nous intéresse, nous allons utiliser le tzselect commande.
La commande tzselect est un outil interactif qui guide l'utilisateur vers la syntaxe de fuseau horaire à utiliser sur son fichier .profile .
Cela signifie que le tzselect ne modifiera pas le fuseau horaire, mais il vous fournira les commandes que vous devez écrire pour le modifier.
$ tzselect
Sélectionnez le fuseau horaire qui vous intéresse en tapant le numéro correspondant à l'entrée.
#? 7
À partir de là, une liste de pays vous sera présentée. Choisissez celui qui vous intéresse.
Si vous êtes d'accord avec les informations affichées dans le terminal, appuyez simplement sur "1" et appuyez sur Entrée.
Comme spécifié, ajoutez la ligne suivante à votre fichier .profile.
echo "TZ='Europe/Paris'; export TZ" >> /home/<user>/.profile
Vérifiez que vos modifications ont été correctement ajoutées à votre fichier .profile.
$ tail -n 1 /home/<user>/.profile
TZ='Europe/Paris'; export TZ
Déconnectez-vous de votre compte et reconnectez-vous pour que vos modifications soient prises en compte.
Lors de la prochaine connexion, vérifiez que la variable d'environnement TZ est correctement configuré
$ echo $TZ
Europe/Paris
$ date
Wed 18 Sep 2019 11:25:36 PM CEST
Génial, vous avez réussi à changer le fuseau horaire de votre instance Debian 10 Buster.
Conclusion
Félicitations, vous avez appris comment vous pouvez facilement changer votre fuseau horaire sur Debian 10 Buster.
Si vous êtes intéressé par d'autres didacticiels liés à l'administration système et à la configuration du serveur, assurez-vous de lire tous les articles que nous avons écrits sur le sujet.