Date et heure

Deux types d'horloge sont présentes sur un système :

Des dispositifs annexes permettent

Quelques abréviations et traductions

1 - Affichage

1.1 - Fuseau horaire

Le fuseau horaire est sélectionné lors de l'installation. Pour afficher le fuseau horaire :

$ cat /etc/timezone
Europe/Paris

1.2 - Décalage horaire par rapport à UTC

La commande zdump associée au fichier localtime affiche le décalage horaire par rapport à UTC en fonction du fuseau horaire et du passage heure d'été / heure d'hiver :

$ zdump -v /etc/localtime | grep 2016
/etc/localtime Sun Mar 27 00:59:59 2016 UT = Sun Mar 27 01:59:59 2016 CET isdst=0 gmtoff=3600
/etc/localtime Sun Mar 27 01:00:00 2016 UT = Sun Mar 27 03:00:00 2016 CEST isdst=1 gmtoff=7200
/etc/localtime Sun Oct 30 00:59:59 2016 UT = Sun Oct 30 02:59:59 2016 CEST isdst=1 gmtoff=7200
/etc/localtime Sun Oct 30 01:00:00 2016 UT = Sun Oct 30 02:00:00 2016 CET isdst=0 gmtoff=3600

Dans l'exemple ci-dessus, les lignes qui précédent indiquent que, pour le fuseau horaire défini dans /etc/timezone (Europe/Paris)

Note : Les heures d'hiver sont indiquées par l'abréviation CET, les heures d'été sont indiquées par l'abréviation CEST

1.3 - Date et heure système

La commande date affiche l'heure système, celle-ci prend en compte de façon automatique le fuseau horaire et le passage heure d'été / heure d'hiver :

$ date
lundi 6 juin 2016, 20:03:46 (UTC+0200)

A partir de l'exemple ci-dessus

1.4 - Date et heure matérielle

L'heure matérielle est également affichée en heure locale (c'est à dire en prenant en compte le fuseau horaire et l'heure d'été)

# hwclock 
lun. 06 juin 2016 20:03:27 CEST -0.500873 secondes

Elle peut donc être directement comparée à l'heure système.

2 - Réglages

2.1 - Fuseau horaire

Le paquet tzdata permet de définir (redéfinir) le fuseau horaire à partir de la localisation géographique

# dpkg-reconfigure tzdata

Current default time zone: 'Europe/Paris'
Local time is now: Fri Jun 3 20:13:29 CEST 2016.
Universal Time is now: Fri Jun 3 18:13:29 UTC 2016.

La commande affiche ensuite, la date et l'heure exprimées en temps coordonné universel (UTC) et en temps local. Dans le cas présent, il est 20h13 heure locale prenant en compte l'heure d'été (CEST).

2.2 - Horloge système

L'horloge système peut-être réglée :

2.2.1 - Saisie manuelle

Entrer l'heure et la date avec la commande date et l'option -s (set). De nombreux formats de dates et heures sont possibles.

# date –s 2016-06-18
# date –s 13:08:00
# date -s "2014-03-31 23:14:00"

2.2.2 - Synchronisation ntpdate

ntpdate permet de synchroniser l'heure système sur des serveurs de temps internet de haute précision.

Installer le paquet ntpdate

# aptitude install ntpdate

La commande ntpdate-debian permet de synchroniser l'horloge système sur des serveurs internet ntp en utilisant le pool de serveurs défini dans /etc/default/ntpdate.

Modifier le fichier /etc/default/ntpdate pour indiquer d'utiliser les serveurs de /etc/default/ntpdate, plutôt que ceux de /etc/ntp.conf. Pour cela, remplacer yes par no dans la ligne NTPDATE_USE_NTP_CONF=yes

# sed -i 's/NTPDATE_USE_NTP_CONF=yes/NTPDATE_USE_NTP_CONF=no/' /etc/default/ntpdate
# ntpdate-debian
6 Jan 10:35:21 ntpdate[4861]: adjust time server 62.210.72.164 offset 0.013295 sec

Une synchronisation est effectuée automatiquement à chaque démarrage de la machine (sous réserve de disponibilité d'un accès à internet).

2.2.3 Synchronisation sur l'horloge matérielle

L'option ---hctosys (-s), permet de régler l'horloge matérielle (hardware clock) sur l'horloge système

# hwclock --hctosys

2.3 - Horloge matérielle

2.3.1 Paramétrage mode UTC / Heure locale

L'horloge matérielle peut-être paramétrée pour fonctionner soit en heure UTC, soit en heure locale. Ce paramétrage est défini à l'installation, mais peut-être modifiée ensuite. Pour raisons de compatibilité, utiliser le réglage heure locale si un système Windows est également présent sur la machine, sinon utiliser le réglage UTC. La définition s'effectue avec les options --localtime et --utc. Par exemple,

# hwclock --utc

Ce paramétrage peut-être effectué indépendamment ou en combinaison avec des commandes de mise à jour.

2.3.2 Réglage de l'heure

L'horloge matérielle peut-être réglée

2.3.3 Réglage de l'heure - Méthode manuelle

Entrer l'heure et la date avec la commande hwclock et l'option --set --date="xxxxxxxxxxxxxxxxxx". Par exemple :

# hwclock --set --date="2014-03-31 23:14:00" 2.3.3 Réglage de l'heure - Synchronisation sur l'horloge système

2.3.4 Réglage de l'heure - Synchronisation sur l'horloge système

L'option --systohc ou -w permet de synchroniser l'horloge matérielle sur l'horloge système

# hwclock  --systohc --utc