LFCA : Apprendre à gérer le temps et la date sous Linux – Partie 6
Cet article est la partie 6 de la série LFCA, ici dans cette partie, vous vous familiariserez avec les commandes générales d’administration du système pour gérer les paramètres d’heure et de date dans le système Linux.
Le temps est crucial dans tout système Linux. Plusieurs services tels que crontab, anacron, les services de sauvegarde et de restauration dépendent d’un temps précis pour effectuer leurs tâches comme prévu.
Linux dispose de 2 types d’horloges :
- Horloge matérielle – Il s’agit de l’horloge alimentée par batterie, également appelée horloge CMOS ou RTC (horloge en temps réel). L’horloge fonctionne indépendamment du système d’exploitation et continue de fonctionner même lorsque le système est éteint à condition que la pile CMOS soit présente.
- Horloge système (horloge logicielle) – Ceci est également appelé horloge du noyau. Au démarrage, l’horloge système est initialisée à partir de l’horloge matérielle et prend le relais à partir de là.
Habituellement, il existe une différence de temps entre les deux horloges telle qu’elles dérivent progressivement l’une de l’autre. Nous y reviendrons plus tard et vous montrerons comment vous pouvez synchroniser ces horloges.
Pour l’instant, nous allons voir comment vous pouvez vérifier l’heure et la date sur un système Linux.
Vérifier l’heure et la date sur un système Linux
Il existe deux utilitaires principaux utilisés pour vérifier l’heure et la date sur un système Linux. La première est la commande date. Sans aucun argument, il fournit pas mal d’informations montrées
$ date
Friday 26 March 2021 11:15:39 AM IST
Pour afficher la date au format jj-mm-aa uniquement, exécutez la commande :
$ date +"%d-%m-%y"
26-03-21
Si vous souhaitez simplement afficher l’heure actuelle uniquement et rien d’autre, utilisez la commande :
$ date "+%T"
11:17:11
La commande timedatectl est un nouvel utilitaire utilisé dans les systèmes Linux modernes tels que Ubuntu 18.04, RHEL 8 et CentOS 8. Il s’agit d’un remplacement de la commande date qui était importante dans les anciens systèmes SysVinit. Il peut être utilisé pour interroger et ajuster l’heure sur un système Linux.
Sans aucune option, la commande timedatectl imprime un tableau d’informations telles que l’heure locale, l’heure UTC, l’heure RTC et le fuseau horaire, pour n’en citer que quelques-unes.
$ timedatectl
Comment définir un fuseau horaire sur un système Linux
Sur un système Linux, l’heure dépend du fuseau horaire défini. Pour vérifier le fuseau horaire configuré sur votre système, exécutez la commande :
$ timedatectl | grep Time
D’après ce qui ressort de l’extrait ci-dessus, je suis dans le fuseau horaire Afrique/Nairobi. Pour afficher les fuseaux horaires disponibles, exécutez la commande :
$ timedatectl list-timezones
Appuyez sur ENTER pour faire défiler la liste complète des fuseaux horaires possibles disponibles.
Les fuseaux horaires sont également définis dans le chemin /usr/share/zoneinfo/, comme indiqué.
$ ls /usr/share/zoneinfo/
Il existe plusieurs façons de configurer le fuseau horaire. À l’aide de la commande timedatectl, vous pouvez définir le fuseau horaire, par exemple, sur America/Chicago, en utilisant la syntaxe indiquée.
$ timedatectl set-timezone 'America/Chicago'
L’autre façon de définir le fuseau horaire est de créer un lien symbolique à partir d’un fichier de fuseau horaire dans le chemin /usr/share/zoneinfo vers /etc/localtime. Par exemple, pour définir le fuseau horaire local sur EST (heure normale de l’Est), exécutez la commande :
$ sudo ln -sf /usr/share/zoneinfo/EST /etc/localtime
Définir la date et l’heure sur un système Linux
Pour régler l’heure uniquement sur un système Linux en utilisant le format HH :MM :SS (Hour : Minute : Second ), utilisez la syntaxe ci-dessous
$ timedatectl set-time 18:30:45
Pour définir la date uniquement au format AA-MM-JJ (Année : Mois : Jour), utilisez la syntaxe :
$ timedatectl set-time 20201020
Pour régler à la fois la date et l’heure, exécutez :
$ timedatectl set-time '2020-10-20 18:30:45'
REMARQUE : Il n’est pas recommandé de régler manuellement l’heure et la date de cette manière, car vous risquez de configurer des paramètres d’heure et de date inexacts. En fait, par défaut, la synchronisation automatique de l’heure est activée pour vous empêcher d’effectuer des réglages manuels de l’heure et de la date.
La méthode la plus recommandée pour régler l’heure consiste à spécifier le fuseau horaire dans lequel vous vous trouvez, comme indiqué précédemment, ou à activer la synchronisation automatique de l’heure avec un serveur NTP distant.
Définir la synchronisation automatique de l’heure à l’aide du serveur NTP
NTP est l’abréviation de Network Time Protocol, qui est un protocole Internet utilisé pour synchroniser automatiquement l’horloge du système avec un pool sur les serveurs NTP en ligne.
À l’aide de la commande timedatectl, vous pouvez définir la synchronisation automatique de l’heure comme suit :
$ timedatectl set-ntp true
Pour désactiver la synchronisation automatique de l’heure NTP, exécutez :
$ timedatectl set-ntp false
Conclusion
Les commandes timedatectl et date sont des outils de ligne de commande pratiques qui peuvent vous aider à vérifier et à ajuster votre heure sous Linux.





