Recherche de site Web

LFCA : Apprenez à gérer l’heure et la date sous Linux – Partie 6


Cet article est la Partie 6 de la série LFCA. 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 les services crontab, anacron, 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 batterie CMOS soit présente.
  • Horloge système ( Horloge logicielle) : elle est également appelée 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 un décalage horaire entre les deux horloges, de sorte qu’elles s’éloignent progressivement l’une de l’autre. Nous y reviendrons plus tard et vous montrerons comment synchroniser ces horloges.

Pour l’instant, nous verrons comment 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 affichées

date

Friday 26 March 2021 11:15:39 AM IST

Pour afficher la date au format d'heure 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 ensemble 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 le résultat de l'extrait ci-dessus, je me trouve 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 toute la liste des fuseaux horaires possibles disponibles.

Les fuseaux horaires sont également définis dans le chemin /usr/share/zoneinfo/ comme indiqué.

ls /usr/share/zoneinfo/

Vous pouvez utiliser plusieurs méthodes pour configurer le fuseau horaire. À l'aide de la commande timedatectl, vous pouvez définir le fuseau horaire, par exemple, sur Amérique/Chicago, en utilisant la syntaxe indiquée.

timedatectl set-timezone 'America/Chicago'

L'autre façon de définir le fuseau horaire consiste à 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 standard 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 définir 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 de définir manuellement l'heure et la date.

La méthode la plus recommandée pour régler l'heure consiste soit à spécifier le fuseau horaire dans lequel vous vous trouvez, comme indiqué précédemment, soit à 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 des 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.