Az időzónák a Földet Kelet-Nyugati irányban 15o-os részekre osztják, és arra szolgálnak, hogy meg tudjuk állapítani, máshol mennyi az idő.
Manapság ez a felosztás inkább politikai döntéstől függ, az időzónák nem teljesen egyformák. Energiamegtakarítási célból alkalmazzuk a nyári időszámítást, ami szintén egy időzóna-variációnak tekinthető (tudniillik az időzóna eltolásának fogható fel).
Az időzónát az adott ország kormánya határozza meg, a nevét 3 vagy 4 betűvel rövidítjük. Lásd: 3.2 (időzóna példák).
Megnézhetjük a timezoneconverter.com hivatkozás segítségével, hogy most éppen mennyi az idő a Föld különböző helyein.
Energiamegtakarítási célokból az egyes országok "nyári időszámítást" vezetnek be. Ilyenkor az órákat egy órával előre állítják. Ez gyakorlatilag az időzóna eltolását jelenti. A kiindulópont (az UTC) ideje mindig ugyanaz marad.
Később bemutatjuk, hogyan lehet a Linuxban a DST-t (=a nyári időszámításra való áttérést) automatikusan beállítani.
Legjobb magyarázat a példa:
Táblázat 1. Brazil időzónák. Az időeltolások az UTC-hez képest értendők.
| Név és eltolás | DST Név és eltolás | Helyek |
|---|---|---|
| BREST -2:00 | BREDT -1:00 | Fernando de Noronha |
| BRST -3:00 | BRDT -2:00 | São Paulo, Rio, Brasilia, Minas Gerais, északkeleti terület, déli terület stb. |
| BRWST -4:00 | BRWDT -3:00 | Nyugati terület |
| BRAST -5:00 | BRADT -4:00 | Acre |
Kérem küldjenek be hasonló táblázatokat az időzónákra.
A Linux a glibc dinamikus időzónáját használja, amely az /etc/localtime fájl beállítását veszi figyelembe. Ez a fájl többnyire egy hivatkozás, ami a zónainfó fájlra mutat, vagy annak másolatára. A zónainfó fájl többnyire itt található: /usr/share/zoneinfo.
Geográfiai szempontból 360o/15o=24 időzóna létezik a Földön. Az időzóna információ könnyebb beállítása érdekében az /usr/share/zoneinfo fájlban több száz ország és város neve megtalálható.
Néhány országban (például Brazíliában is), a nyári időszámítás kezdete nem mindig ugyanaz a nap, minden évben meghatározzák nyár előtt jó pár hónappal. Ilyen esetben a zónainfó fájlt módosítani kell a zic paranccsal, ami egy ehhez hasonló szövegfájlból dolgozik:
Példa 1. Brazil időzóna-infó szövegfájl
# Brazíl időzónák # # A brazíl időzónák a következők: # BREST: Kelet-Brazília. Fernando de Noronha. # BRST: Brazília, São Paulo, Rio, északkelet, dél, stb. # BRWST: Nyugat-Brazília. Mato Grosso, Manaus # BRAST: Acre. # # A nyári időszámítás alatt az 'S' betű 'D'-re változik. # # A lista felrakásához: # # # zic Brazil.txt # # A zónafájlok az /usr/share/zoneinfo alá lesznek berakva # (Linux disztribúciótól is függ). Ezután csináljunk egy # szimbolikus hivatkozást a zónainfóról az /etc/localtime fájlra: # # # ln -sf /usr/share/zoneinfo/Brazil/Brasilia /etc/localtime # # # Ha módosítás vagy új szabvány jönne létre ezzel a listával kapcsolatban, # kérem értesítsenek az alábbi címen: # # Avi Alkalay <avi @ unix.sh> # # Utolsó módosítás: 2000.11.18 # Ez a lista hozzáférhető az alábbi helyen: # 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 |
A Rule blokk meghatározza az időzóna váltás dátumát és idejét, a Zone blokk pedig megadja azt, hogy mire váltanak. A Zone valójában egy fájl az /usr/share/zoneinfo könyvtárban. Itt földrészek szerint sok városnevet találunk, hogy könnyebb legyen a számunkra megfelelőt kiválasztani.
Az időzónák listáját a zic paranccsal bővíthetjük, ha ezt szükségesnek tartjuk. A legtöbb Linux terjesztésben létezik más megoldás az időzóna beállítására, legjobb, ha azt használjuk. 4.1 .
Ha az /etc/localtime az általunk kiválasztott időzóna fájlra mutat, akkor a nyári időszámításra való áttérés (DST) teljesen automatikus, ezzel kapcsolatban nincs további teendőnk.
A következő parancssorozat bemutatja a Linux időzóna mechanizmusát.
bash$ ls -al /etc/localtime lrwxrwxrwx 1 root root 35 OKT 24 2000 /etc/localtime -> /usr/share/zoneinfo/Europe/Budapest bash$ date K AUG 10 20:32:56 CEST 2004 bash# ln -sf /usr/share/zoneinfo/UTC /etc/localtime bash$ date K AUG 10 18:33:15 UTC 2004 bash# ln -sf /usr/share/zoneinfo/Europe/Budapest /etc/localtime bash$ date K AUG 10 20:33:30 CEST 2004 |
20:33 előtt az alapértelmezett időzóna volt beállítva (Europe/Budapest), ezután az UTC időt állítottuk be. Ekkor a date paranccsal kiíratott idő 2 órával kevesebbet mutat! Az időben hasonló változást figyelhetünk meg a téli/nyári időszámításra való automatikus áttéréskor is, de akkor nem változik meg az időzóna! Ezt itt csak a példa kedvéért mutattuk be.
Minden futó alkalmazás érzékeli a fentihez hasonló változást. A rendszeren dolgozók számára fontos észben tartani, hogy az idő az a pillanatnyi idő plusz az időzóna. Részletesebben a 2 fejezetben mutatjuk be.
Végül vissza lett állítva a helyes (Europe/Budapest) időzóna.
| Előző | Tartalomjegyzék | Következő |
| A számítógép által használt dátum és idő fogalma | A Linuxot használó gép beállítása |