Le fuseau horaire est défini au moment de l'installation du système d'exploitation Ubuntu et vous pouvez également le modifier ultérieurement. Il est très important de configurer un fuseau horaire approprié pour les applications basées sur les tâches cron et les horodatages.
Les systèmes d'exploitation modernes détectent et synchronisent l'heure à l'aide des serveurs de temps NIST (National Institute of Standards and Technology). Le NIST exploite une horloge atomique qui ne gagne ni ne perd une seconde en 300 millions d'années.
Chez LinuxAPT, dans le cadre de nos services de gestion de serveur, nous aidons régulièrement nos clients à effectuer des requêtes Ubuntu connexes.
Dans ce contexte, nous examinerons différentes méthodes pour changer de fuseau horaire sur le système Ubuntu 18.04.
Comment obtenir le fuseau horaire actuel ?
Avant de poursuivre cette procédure de configuration, assurez-vous que vous utilisez un compte utilisateur avec des privilèges sudo.
Fondamentalement, la commande timedatectl est la même pour toutes les distributions Linux et est utilisée pour obtenir et définir facilement le fuseau horaire du système. Exécutez la commande ci-dessous pour obtenir le fuseau horaire actuel :
$ timedatectl
Il affichera la sortie comme ci-dessous :
Local time: Tue 2021-04-30 11:57:15 IST
Universal time: Tue 2021-04-30 06:27:15 UTC
RTC time: Tue 2021-04-30 06:27:15
Time zone: Asia/Kolkata (IST, +0530)
System clock synchronized: yes
systemd-timesyncd.service active: yes
RTC in local TZ: no
Fichiers de configuration du fuseau horaire sur Ubuntu
- /usr/share/zoneinfo/ – Les fichiers de nom de fuseau horaire sont stockés dans ce répertoire. Par exemple, le fichier /usr/share/zoneinfo/America/New_York représente le fuseau horaire de New York.
- /etc/localtime – Il s'agit d'un lien symbolique vers le fichier localtime situé dans le répertoire /usr/share/zoneinfo/.
Comment changer le fuseau horaire dans Ubuntu ?
Pour commencer, vous devez connaître le nom long du fuseau horaire que vous souhaitez définir. Pour obtenir la liste de tous les fuseaux horaires disponibles, exécutez la commande ci-dessous :
$ timedatectl list-timezones
Il affichera une sortie comme ci-dessous :
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
Africa/Bamako
Africa/Bangui
...
...
America/Caracas
America/Cayenne
America/Cayman
America/Chicago
America/Chihuahua
America/Costa_Rica
...
...
Pacific/Saipan
Pacific/Tahiti
Pacific/Tarawa
Pacific/Tongatapu
Pacific/Wake
Pacific/Wallis
UTC
Prenez le nom long du fuseau horaire que vous souhaitez définir et exécutez la commande suivante comme avec l'utilisateur sudo.
La syntaxe de base de la commande est :
$ sudo timedatectl set-timezone NEW_TIME_ZONE
Par exemple, si votre fuseau horaire requis est Amérique/New_York, vous pouvez le définir en exécutant la commande comme ci-dessous :
$ sudo timedatectl set-timezone America/New_York
Maintenant, vérifiez à nouveau le fuseau horaire à l'aide de la commande timedatectl :
$ timedatectl
Il devrait être remplacé par le nouveau fuseau horaire America/New_York :
Local time: Wed 2021-04-30 02:30:39 EDT
Universal time: Wed 2021-04-30 06:30:39 UTC
RTC time: Wed 2021-04-30 06:30:39
Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
systemd-timesyncd.service active: yes
RTC in local TZ: no
Comment changer le fuseau horaire par lien symbolique ?
Une autre façon de changer de fuseau horaire consiste à créer un lien symbolique. Cette méthode est utile lorsque votre serveur exécute une ancienne version d'Ubuntu ou lorsque la commande timedatectl n'est pas disponible. Nous allons changer le fuseau horaire en créant un lien symbolique /etc/localtime vers le fuseau horaire dans le répertoire /usr/share/zoneinfo.
Tout d'abord, vous devez supprimer le lien symbolique ou le fichier /etc/localtime actuel en tapant :
$ sudo rm -rf /etc/localtime
Après cela, ajoutez le fuseau horaire que vous souhaitez définir et créez un lien symbolique :
$ sudo ln -s /usr/share/zoneinfo/America/New_York /etc/localtime
Maintenant, si vous voulez le vérifier, vous pouvez le faire en listant le fichier /etc/localtime ou en exécutant la commande date :
$ date
Il affichera la sortie ci-dessous :
Output
Tue Apr 30 02:37:22 EDT 2021