Les fuseaux horaires sont des divisions géographiques du globe terrestre tous les 15° de longitude, commençant à Greenwich en Angleterre, créées pour aider les gens à déterminer l'heure qu'il est partout dans le monde.
De nos jours, il s'agit plus de divisions politiques que géographiques, parce que parfois les gens ont besoin d'avoir la même heure que d'autres en des lieux pas trop éloignés. Et pour faire des économies d'énergies, nous avons aujourd'hui l'heure d'été qui correspond à un changement de fuseau horaire.
Les fuseaux horaires sont généralement définis par les gouvernements ou par un institut d'astronomie et sont représentés par un code de 3 ou 4 lettres. Voir Section 2.2, « Exemples de fuseaux horaires » pour des exemples.
Si vous voulez connaître l'heure actuelle n'importe où dans le monde, vous pouvez utiliser les sites web timezoneconverter.com (en anglais) ou horlogeparlante.com (en français)
Pour faire des économies d'énergie, les gouvernements ont créé l'heure d'été (appelée en anglais Daylight Savings Time ou DST). Nos horloges sont avancées d'une heure et cela fait sembler nos journées plus longues. En fait, cela revient seulement à changer de fuseau horaire. Le temps primitif (UTC) est encore, et restera toujours, le même.
Nous verrons plus tard comment activer ou désactiver automatiquement l'heure d'été dans Linux.
Il n'y a rien de plus parlant que des exemples :
Tableau 1. Fuseaux horaires du Brésil. Décalage par rapport à l'heure UTC
Nom et décalage | Nom et décalage heure d'été | Lieux |
---|---|---|
BREST -2:00 | BREDT -1:00 | Fernando de Noronha |
BRST -3:00 | BRDT -2:00 | Sao Paulo, Rio, Brasilia, Minas Gerais, Région Nord-Est, Région Sud, et cætera |
BRWST -4:00 | BRWDT -3:00 | Région Ouest |
BRAST -5:00 | BRADT -4:00 | Acre |
Si vous avez une table telle que celle-ci pour les USA ou l'Europe, envoyez-la moi s'il-vous-plaît.
Les systèmes Linux utilisent les fuseaux horaires dynamiques GLIBC basés sur /etc/localtime
. Ce fichier est un lien vers (ou une copie) d'un fichier d'information de fuseau horaire situé généralement dans le répertoire /usr/share/zoneinfo
.
D'un point de vue géophysique, il y a seulement 360°/15°=24 fuseaux horaires dans le monde. Mais pour rendre les choses faciles pour tous et pour tenir compte de toutes les variations politiques (comme l'heure d'été), vous trouverez des centaines de fichiers d'information de fuseau horaire dans /usr/share/zoneinfo
, chacun valable pour une ville, un pays, et cætera.
Certains pays, comme le Brésil, n'ont pas un jour fixe pour passer à l'heure d'été. Il est défini chaque année quelques mois avant l'été et peut vous obliger à changer votre fichier d'information de fuseau horaire qui peut être compilé avec la commande zic à partir d'un fichier comme celui-ci.
Exemple 1. Fichier d'information de fuseau horaire pour le Brésil
# Fuseaux horaires du Brésil # # Les fuseaux horaires brésiliens sont : # BREST: Est de Brasilia. Fernando de Noronha. # BRST: Brasilia, Sao Paulo, Rio, Nord-est, Sud, etc # BRWST: Ouest de Brasilia. Mato Grosso, Manaus # BRAST: Acre. # # En heure d'été, la lettre 'S' devient 'D'. # # Pour installer, exécuter : # # # zic Brazil.txt # # Les fichiers de fuseaux horaires seront installés dans # /usr/share/zoneinfo (dépend de votre distribution). Ensuite, # créez un lien symbolique de votre zone vers /etc/localtime : # # # ln -sf /usr/share/zoneinfo/Brazil/Brasilia /etc/localtime # # # Si vous avez des mises à jour ou de nouveaux standards pour ce # fichier, envoyez-les en anglais à # # Avi Alkalay <avi @ unix.sh> # # Dernière mise à jour : 18 Nov 2000 # Ce fichier est disponible sur http://avi.alkalay.net/linux/zoneinfo/ # # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Brazil 1931 1932 - Oct 3 0:00 1:00 D Rule Brazil 1932 1933 - Mar 31 0:00 0 S Rule Brazil 1949 only - Dec 1 0:00 1:00 D Rule Brazil 1950 only - Apr 30 0:00 0 S Rule Brazil 1950 1952 - Dec 1 0:00 1:00 D Rule Brazil 1951 only - Apr 16 0:00 0 S Rule Brazil 1952 only - Mar 31 0:00 0 S Rule Brazil 1953 only - Feb 28 0:00 0 S Rule Brazil 1963 only - Oct 23 0:00 1:00 D Rule Brazil 1964 only - Mar 1 0:00 0 S Rule Brazil 1965 only - Jan 31 0:00 1:00 D Rule Brazil 1965 only - Mar 31 0:00 0 S Rule Brazil 1965 only - Dec 1 0:00 1:00 D Rule Brazil 1966 1968 - Mar 1 0:00 0 S Rule Brazil 1966 1967 - Nov 1 0:00 1:00 D Rule Brazil 1984 only - Nov 2 0:00 1:00 D Rule Brazil 1985 only - Mar 15 0:00 0 S Rule Brazil 1985 only - Nov 2 0:00 1:00 D Rule Brazil 1986 only - Mar 15 0:00 0 S Rule Brazil 1986 only - Oct 25 0:00 1:00 D Rule Brazil 1987 only - Feb 14 0:00 0 S Rule Brazil 1987 only - Oct 25 0:00 1:00 D Rule Brazil 1988 only - Feb 7 0:00 0 S Rule Brazil 1988 only - Oct 16 0:00 1:00 D Rule Brazil 1989 only - Jan 29 0:00 0 S Rule Brazil 1989 only - Oct 15 0:00 1:00 D Rule Brazil 1990 only - Feb 11 0:00 0 S Rule Brazil 1990 only - Oct 21 0:00 1:00 D Rule Brazil 1991 only - Feb 17 0:00 0 S Rule Brazil 1991 only - Oct 20 0:00 1:00 D Rule Brazil 1992 only - Feb 9 0:00 0 S Rule Brazil 1992 only - Oct 25 0:00 1:00 D Rule Brazil 1993 only - Jan 31 0:00 0 S Rule Brazil 1993 only - Oct 17 0:00 1:00 D Rule Brazil 1994 only - Feb 20 0:00 0 S Rule Brazil 1994 only - Oct 16 0:00 1:00 D Rule Brazil 1995 only - Feb 19 0:00 0 S Rule Brazil 1995 only - Oct 15 0:00 1:00 D Rule Brazil 1996 only - Feb 11 0:00 0 S Rule Brazil 1996 only - Oct 06 0:00 1:00 D Rule Brazil 1997 only - Feb 16 0:00 0 S Rule Brazil 1997 only - Oct 06 0:00 1:00 D Rule Brazil 1998 only - Mar 01 0:00 0 S Rule Brazil 1998 only - Oct 11 0:00 1:00 D Rule Brazil 1999 only - Feb 21 0:00 0 S Rule Brazil 1999 only - Oct 03 0:00 1:00 D Rule Brazil 2000 only - Feb 27 0:00 0 S Rule Brazil 2000 only - Oct 8 0:00 1:00 D Rule Brazil 2001 only - Feb 18 0:00 0 S # Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL] Zone Brazil/DeNoronha -2:00 Brazil BRE%sT Zone posix/Brazil/DeNoronha -2:00 Brazil BRE%sT Zone right/Brazil/DeNoronha -2:00 Brazil BRE%sT Zone Brazil/East -2:00 Brazil BRE%sT Zone posix/Brazil/East -2:00 Brazil BRE%sT Zone right/Brazil/East -2:00 Brazil BRE%sT Zone America/Sao_Paulo -3:00 Brazil BR%sT Zone America/Rio_de_Janeiro -3:00 Brazil BR%sT Zone America/Brasilia -3:00 Brazil BR%sT Zone posix/America/Sao_Paulo -3:00 Brazil BR%sT Zone posix/America/Rio_de_Janeiro -3:00 Brazil BR%sT Zone posix/America/Salvador -3:00 Brazil BR%sT Zone posix/America/Brasilia -3:00 Brazil BR%sT Zone posix/Brazil/Central -3:00 Brazil BR%sT Zone posix/Brazil/Brasilia -3:00 Brazil BR%sT Zone posix/Brazil/Sao_Paulo -3:00 Brazil BR%sT Zone posix/Brazil/Salvador -3:00 Brazil BR%sT Zone posix/Brazil/Rio_de_Janeiro -3:00 Brazil BR%sT Zone right/America/Sao_Paulo -3:00 Brazil BR%sT Zone right/America/Rio_de_Janeiro -3:00 Brazil BR%sT Zone right/America/Salvador -3:00 Brazil BR%sT Zone right/America/Brasilia -3:00 Brazil BR%sT Zone right/Brazil/Central -3:00 Brazil BR%sT Zone right/Brazil/Brasilia -3:00 Brazil BR%sT Zone right/Brazil/Sao_Paulo -3:00 Brazil BR%sT Zone right/Brazil/Salvador -3:00 Brazil BR%sT Zone right/Brazil/Rio_de_Janeiro -3:00 Brazil BR%sT Zone Brazil/Central -3:00 Brazil BR%sT Zone Brazil/Brasilia -3:00 Brazil BR%sT Zone Brazil/Sao_Paulo -3:00 Brazil BR%sT Zone Brazil/Rio_de_Janeiro -3:00 Brazil BR%sT Zone Brazil/Salvador -3:00 Brazil BR%sT Zone Brazil/West -4:00 Brazil BRW%sT Zone Brazil/Manaus -4:00 Brazil BRW%sT Zone Brazil/Rondonia -4:00 Brazil BRW%sT Zone Brazil/Roraima -4:00 Brazil BRW%sT Zone Brazil/Mato_Grosso -4:00 Brazil BRW%sT Zone posix/Brazil/Manaus -4:00 Brazil BRW%sT Zone posix/Brazil/Mato_Grosso -4:00 Brazil BRW%sT Zone right/Brazil/Manaus -4:00 Brazil BRW%sT Zone right/Brazil/Mato_Grosso -4:00 Brazil BRW%sT Zone posix/America/Manaus -4:00 Brazil BRW%sT Zone right/America/Manaus -4:00 Brazil BRW%sT Zone Brazil/Acre -5:00 Brazil BRA%sT
Une ligne Rule définit la date et l'heure à
laquelle s'effectue un changement de fuseau horaire, tandis
qu'une ligne Zone référence la règle
(Rule) qui la gérera. Notez que le nom de
la Zone est en fait le nom du fichier dans
le répertoire /usr/share/zoneinfo
et qu'il peut
y avoir plusieurs noms pour le même fuseau horaire afin qu'il
soit plus facile de trouver sa propre zone.
Les commentaires du fichier expliquent comment installer ces fuseaux horaires en utilisant le compilateur de fichier d'information de fuseau horaire zic. Pour le rendre effectif, vous n'avez plus qu'à créer un lien (ou copier) du fichier d'information de fuseau horaire vers /etc/localtime
. Pour certaines distributions, il y a une méthode de niveau supérieur (et préférable) pour régler le fuseau horaire décrite dans Section 3.1, « Sélection du fuseau horaire ».
Après avoir fait pointer /etc/localtime
vers le fichier de fuseau horaire correct, les règles de cette zone s'appliquent déjà et les changements de fuseau sont automatiques ; vous n'avez plus à changer l'heure manuellement.
La séquence suivante de commandes illustre la dynamique de la gestion des fuseaux horaires sous Linux. Notez qu'elles ont toutes été exécutées en moins d'une minute :
bash$
ls -al /etc/localtime lrwxrwxrwx 1 root root 35 May 22 2001 /etc/localtime -> /usr/share/zoneinfo/Brazil/Brasiliabash$
date Fri Mar 29 20:13:38 BRST 2002bash#
ln -sf /usr/share/zoneinfo/GMT /etc/localtimebash$
date Fri Mar 29 23:13:47 GMT 2002bash#
ln -sf /usr/share/zoneinfo/Brazil/Brasilia /etc/localtimebash$
date Fri Mar 29 20:14:03 BRST 2002
A 20:13, j'étais dans le fuseau horaire par défaut du Brésil (BRST) ; ensuite, je suis passé à l'heure GMT et l'horloge du système est passée à 23:13 ! Quand votre fuseau horaire passera à l'heure d'été, vous verrez un effet similaire, mais cette fois les règles sont toutes à l'intérieur de votre fichier /etc/localtime
(qui ne change pas au contraire de cet exemple).
Une application tournant sur cette machine (par exemple un serveur web générant des fichiers journaux) sera sensible à ce changement ; il est donc très important pour les développeurs de se souvenir que l'heure locale est égale à l'heure universelle actuelle plus le fuseau horaire actuel, comme décrit dans Section 1, « L'heure et la date en informatique ».
Finalement, je suis revenu à mon fuseau horaire de départ.
Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:27