Comment configurer le fuseau horaire sur Ubuntu 18.04 Server
Pour changer le fuseau horaire système sur Ubuntu 18.04 Server, commencez par vérifier le nom avec timedatectl list-timezones puis réglez-le comme indiqué dans sudo timedatectl set-timezone Asia/Seoul. tzselect est un outil pour trouver le nom du fuseau horaire, et l’exécuter seul ne change pas les paramètres globaux du système.
Différence entre fuseau horaire et heure système
Un fuseau horaire est une règle appliquée pour afficher le même moment comme une date et une heure locales. Par exemple, Asia/Seoul est le nom du fuseau horaire pour Séoul et il est en avance de 9 heures sur l'UTC (Temps Universel Coordonné). Changer le fuseau horaire modifie généralement la règle d'affichage mais ne synchronise pas l'horloge avec un serveur de temps Internet.
Si vous avez des tâches planifiées ou une analyse de journaux qui fonctionnent en fonction de l'heure locale sur le serveur, vérifiez d'abord l'impact du changement. Certains programmes utilisent leurs propres paramètres de fuseau horaire ou variables d'environnement, donc ils peuvent apparaître différents des paramètres système. Le support général de sécurité pour Ubuntu 18.04 a pris fin, donc vérifiez la portée applicable dans Calendrier de maintenance de sécurité d'Ubuntu et prévoyez de migrer vers une version prise en charge.
Vérifiez le fuseau horaire actuel
Utilisez la commande suivante pour vérifier l'heure système et les paramètres de fuseau horaire. Notez le nom affiché dans Time zone avant de faire des modifications afin de pouvoir le rétablir plus tard.
timedatectl status
date
date -u
timedatectl status affiche l'heure locale du système, l'UTC et le fuseau horaire. date affiche l'heure locale applicable à l'environnement actuel, et date -u affiche l'UTC. Si la variable d'environnement TZ est définie dans le shell actuel, la sortie date peut différer du fuseau horaire par défaut du système.
Changez le fuseau horaire du système en utilisant timedatectl
Tout d'abord, vérifiez les noms de fuseaux horaires disponibles. La liste peut varier en fonction des données de fuseau horaire installées.
timedatectl list-timezones | grep -F 'Asia/Seoul'
Si Asia/Seoul est dans la liste, définissez le fuseau horaire du système avec la commande suivante. Les privilèges administrateur sont requis. Si vous êtes dans une autre région, remplacez-le par le nom trouvé dans la liste.
sudo timedatectl set-timezone Asia/Seoul
timedatectl status
Si la commande réussit, le nom sélectionné apparaîtra dans Time zone. En cas d'erreur, vérifiez la casse du nom, la liste disponible et les privilèges administrateur. Cette commande peut ne pas être utilisable si le système n'utilise pas systemd ou si les modifications sont restreintes dans un conteneur.
Pour revenir au fuseau horaire d'origine, utilisez le nom enregistré avant la modification comme argument de la même commande. Par exemple, utilisez la commande suivante uniquement lorsque la valeur précédente était Etc/UTC.
sudo timedatectl set-timezone Etc/UTC
timedatectl status
Cette commande modifie le réglage du fuseau horaire de /etc/localtime. Si l'horloge matérielle en temps réel (RTC) est réglée sur l'heure locale, cela peut également affecter la RTC. Pour plus de détails, consultez le manuel Ubuntu 18.04 timedatectl.
Utilisation de tzdata et tzselect
Vous pouvez également définir le fuseau horaire du système en utilisant un menu interactif avec la commande suivante. Dans la liste des régions, sélectionnez Asia, et dans la liste des villes, sélectionnez Seoul. Les numéros dans le menu peuvent varier en fonction de l'environnement, donc vérifiez les éléments affichés à l'écran.
sudo dpkg-reconfigure tzdata
Après l'achèvement, vérifiez à nouveau le fuseau horaire du système avec timedatectl status. D'autre part, tzselect n'affiche que le nom du fuseau horaire sélectionné et ne modifie pas le fuseau horaire pour l'ensemble du système. Vous pouvez utiliser le nom obtenu après avoir choisi la région et la ville comme argument de timedatectl set-timezone.
tzselect
Pour exécuter une commande spécifique dans un fuseau horaire différent, vous pouvez spécifier TZ pour cette commande. L'exemple suivant s'applique uniquement à cette exécution unique de date et ne modifie pas les paramètres système.
TZ=Asia/Seoul date
export TZ=Asia/Seoul affecte le shell actuel et les programmes lancés à partir de ce shell, mais ne change pas les paramètres système globaux. Vous pouvez désactiver cette variable dans le shell actuel avec unset TZ. Pour plus de détails, référez-vous au manuel Ubuntu tzselect.
Paramètres de l'écran et vérification après modification
Si un bureau graphique est installé, vous pouvez également sélectionner le fuseau horaire dans les paramètres sous Date & Heure. Si le réglage automatique du fuseau horaire est activé, la sélection manuelle peut être restreinte. L'emplacement du menu varie selon l'environnement de bureau et une installation typique de serveur peut ne pas avoir d'interface graphique.
Après la modification, vérifiez timedatectl status et consultez les journaux ainsi que les tâches planifiées des services affectés. Si le fuseau horaire est correct mais que l'heure réelle est incorrecte, vous devez vérifier séparément le service de synchronisation de l'heure et la connexion réseau. Si seule une application spécifique affiche une heure différente, vérifiez également le TZ de ce processus et les paramètres de l'application.




