Erinevus lehekülje "Arvuti kellaaeg" redaktsioonide vahel
29. rida: | 29. rida: | ||
Kokkuvõttes Maa pöörlemine aeglustub, näiteks saja aastaga muutub aasta 0.8 sekundi võrra pikemaks. | Kokkuvõttes Maa pöörlemine aeglustub, näiteks saja aastaga muutub aasta 0.8 sekundi võrra pikemaks. | ||
− | Arvuti aja vaatamine ja seadmine | + | |
+ | '''Arvuti aja vaatamine ja seadmine''' | ||
Personaalarvuti juures kõneldakse kahest kellast: | Personaalarvuti juures kõneldakse kahest kellast: | ||
46. rida: | 47. rida: | ||
Operatsioonisüsteemi kell | Operatsioonisüsteemi kell | ||
− | bash# date --set="12/31/1999 16:18:30" | + | bash# date --set="12/31/1999 16:18:30" |
BIOSi kell | BIOSi kell | ||
− | bash# hwclock --systohc | + | bash# hwclock --systohc |
− | bash# hwclock --set --date="12/31/1999 16:18:30" | + | bash# hwclock --set --date="12/31/1999 16:18:30" |
− | bash# hwclock --hctosys | + | bash# hwclock --hctosys |
* --systohc tähendab, et raua kell seatakse süsteemi kella järgi | * --systohc tähendab, et raua kell seatakse süsteemi kella järgi | ||
62. rida: | 63. rida: | ||
Kui teile ei meeldi aga nii kombineerida, siis järgmine, suuremat mugavust ja täpsust võimaldav variant on kasutada aja serveritena töötavaid interneti arvuteid ning programmi netdate näiteks madli.ut.ee | Kui teile ei meeldi aga nii kombineerida, siis järgmine, suuremat mugavust ja täpsust võimaldav variant on kasutada aja serveritena töötavaid interneti arvuteid ning programmi netdate näiteks madli.ut.ee | ||
− | bash# netdate | + | bash# netdate timehost.ut.ee |
Sellise käsu andmiseks peate te tegutsema administraatori õigustes ning tulmusena seatakse teie arvuti süteemi aeg. Programm tuleb kaasa Slackware distributsiooniga. | Sellise käsu andmiseks peate te tegutsema administraatori õigustes ning tulmusena seatakse teie arvuti süteemi aeg. Programm tuleb kaasa Slackware distributsiooniga. | ||
68. rida: | 69. rida: | ||
Sarnaselt toimib programm rdate | Sarnaselt toimib programm rdate | ||
− | bash# rdate -s | + | bash# rdate -s timehost.ut.ee |
Kui võtme -s asemel kasutada võtit -p, siis kella ei seata vaid ainult näidatakse, mis kauge masin ütleb kella olevat. Programm tuleb kaasa RedHati distributsiooniga. | Kui võtme -s asemel kasutada võtit -p, siis kella ei seata vaid ainult näidatakse, mis kauge masin ütleb kella olevat. Programm tuleb kaasa RedHati distributsiooniga. | ||
− | Automaatne aja seadmine NTPga | + | |
+ | '''Automaatne aja seadmine NTPga''' | ||
Selleks, et arvuti kell püsiks pika aja vältel, näiteks nädal, õige tuleb teda regulaarselt võrrelda etalonkellaga ning vajadusel korrigeerida. | Selleks, et arvuti kell püsiks pika aja vältel, näiteks nädal, õige tuleb teda regulaarselt võrrelda etalonkellaga ning vajadusel korrigeerida. | ||
83. rida: | 85. rida: | ||
NTP kasutamine eeldab kokkulepet üldaktsepteeritava kellaaja etaloni suhtes. Tänapäeval on selleks üldtunnustatult GPS. NTP süsteemis on olemas esimesse, teise, kolmandasse jne kihti (ingl. k. stratum) kuuluvad NTP serverid ning kliendid. Seda hierarhiat kujutab skeem | NTP kasutamine eeldab kokkulepet üldaktsepteeritava kellaaja etaloni suhtes. Tänapäeval on selleks üldtunnustatult GPS. NTP süsteemis on olemas esimesse, teise, kolmandasse jne kihti (ingl. k. stratum) kuuluvad NTP serverid ning kliendid. Seda hierarhiat kujutab skeem | ||
− | + | ||
− | + | /--\ | |
− | + | | | - GPSi satelliit taeva all | |
− | -------------------------------------------------------------------- | + | \__/ |
− | + | -------------------------------------------------------------------- | |
− | 1. kiht | | | | GPSi seadmega ühendatud | + | --|-- --|-- |
− | + | 1. kiht | | | | GPSi seadmega ühendatud | |
− | -------------------------------------------------------------------- | + | ----- ----- arvutid |
− | 2. kiht ----- ----- ----- ----- | + | -------------------------------------------------------------------- |
− | + | 2. kiht ----- ----- ----- ----- | |
− | + | |_____| |_____| |_____| |_____| stratum 1 arvutite | |
− | --------------------------------------------------------------------- | + | kliendid |
− | 3. kiht |_____| |_____| | + | --------------------------------------------------------------------- |
− | + | 3. kiht |_____| |_____| | |
+ | |||
Esimese kihi masinate kellaaeg on kõige täpsem, nad on ühenduses etalonkellaga, näiteks GPSi seadme abil satelliitidega. Selliseid masinad on maailmas vaid mõned sajad ning tavakasutajal ei ole viisakas nende kliendiks otse asuda. | Esimese kihi masinate kellaaeg on kõige täpsem, nad on ühenduses etalonkellaga, näiteks GPSi seadme abil satelliitidega. Selliseid masinad on maailmas vaid mõned sajad ning tavakasutajal ei ole viisakas nende kliendiks otse asuda. | ||
105. rida: | 108. rida: | ||
NTP protokolli kohaselt on võimalik kellaaja hoidmine täsusega sadu pikosekundeid. Praktiliselt on see interneti puhul suurusjärgus millisekundeid. | NTP protokolli kohaselt on võimalik kellaaja hoidmine täsusega sadu pikosekundeid. Praktiliselt on see interneti puhul suurusjärgus millisekundeid. | ||
− | NTP kasutamine | + | |
+ | '''NTP kasutamine''' | ||
Enne NTP kasutamist tuleb leida endale sobiv NTP server. Eesti oludes tuleks kasutada teise kihi servereid, valige kolm füüsiliselt lähimat: | Enne NTP kasutamist tuleb leida endale sobiv NTP server. Eesti oludes tuleks kasutada teise kihi servereid, valige kolm füüsiliselt lähimat: |
Redaktsioon: 19. august 2006, kell 17:30
Arvuti kellaaeg
Arvuti ja aeg Arvuti aja vaatamine ja seadmine Automaatine aja seadmine NTPga NTP kasutamine NTP installeerimine NTP installeerimine Windowsi jaoks Kasulikud lisamaterjalid
Arvuti ja aeg
Arvuti nagu paljud muudki seadmed toimib ajas. Operatsioonisüsteemil on oma 'ettekujutus' parasjagu käesolevast kellaajast ja sellest, millise kiirusega aeg liigub. Lisaks kasutajale nähtamatuks jäävatele nö sisemistele toimingutele, mille juures arvuti aega arvestab, näiteks CD-seadmes laserkiire liigutamise tarvis, kasutatakse aega ka näiteks faili moodustamise kellaaja ülestähendamiseks. Esimesel juhul ei ole oluline mitte niivõrd see, mis kuupäev on, kui arvuti võime teatud 'rütmis' tegutseda. Teisel puhul on aga justnimelt vajalik tagada, et arvuti kell vastaks sellele ajale, mida tädi raadios ütleb.
Lisaks failidega tegelemisele on kellaaeg oluline näiteks e-posti, veebiteenuste, autentimise ja logide tekitamise puhul.
Enamuse arvutikasutajate kellaaeg, nn kohalik ehk vööndiaeg ei lange täpselt kokku etalonajaks peetava UTC (Universal Time Correctable) ajaga, vaid on sellest täisarvu tundide võrra erinev. Kohalikku aega kasutatakse seepärast, et kell kaksteist oleks päike enamvähem oma kaare haripunktis. Eestis kasutatakse suveaega ja seega on meie aeg talvel kaks ning suvel kolm tundi UTCst taga. Näiteks kui Inglismaal on kell alles 7 hommikul, on meil kell juba 9 samal hommikul (Inglismaal kasutatakse ka suveaega). Linuxi ajatsooni seadmiseks kasutage progammi timeconfig või soovides ise ajatsoonifaile kompileerida, programmi zic.
Linuxi puhul saab lihtsasti kontrollida, millisesse ajatsooni on arvuti seadistatud lingi /etc/localtime abil
bash# ls -l /etc/localtime lrwxrwxrwx 1 root root 36 Mar 25 21:41 /etc/localtime -> /usr/share/zoneinfo/Europe/Tallinn
Vajadusel võib lingi /etc/localtime suunata ümber mõnele teisele asukohale.
Käesolev kirjatükk selgitab, kuidas seada arvuti tööle selliselt, et tema kellaaeg kalduks võimalikult vähe kõrvale etalonajaks valitud ajast. Seoses UTCga tuleb märkida, et see aeg on seotud tseesiumi-133 aatomiga ning on praktiliseks kasutamiseks ideaalselt täpne ning ei sõltu Päikesesüsteemist. Klassikaliselt on pikka aega kasutatud ning tõenäoliselt kasutatakse veel kaua GMT (Greenwinch Mean Time) aega. GMT on keskmine päikeseaeg ja sõltub Maakera pöörlemisest. Kuna Maakera pöörlemine pole ühtlane ja varem või hiljem lähevad UTC ja GMT kellad üksteisest lahku, on kombeks korrigeerida UTC aega vastavaks GMT ajaga, siis kui erinevus ületab üht sekundit. Kui seda mitte teha, siis liiguksid UTC kellad päikeseajast märgatavalt eemale ning see oleks ebamugav.
Maakera pöörlemise ebaühtlus tuleneb tõusu ja mõõnaga seotud hõõrdumistest. Samuti sellest, et kevadel, mil puud lehte lähevad kerkib märgatav mass maapinnast eemale, ja sügisel, kui lehed langevad, vastupidi. Sellega kaasneb Maa inertsimomendi muutus.
Kokkuvõttes Maa pöörlemine aeglustub, näiteks saja aastaga muutub aasta 0.8 sekundi võrra pikemaks.
Arvuti aja vaatamine ja seadmine
Personaalarvuti juures kõneldakse kahest kellast:
* BIOSi kell ehk nn raua kell (ingl. k. hardware clock) - seda aega liigutab patarei, mis töötab aastaid ja tagab, et kell käiks ka siis, kui arvuti pole voolu all. BIOSi kellaaega saab näha andes käsu
bash~$ hwclock --show
Võimalik, et te peate käivitamisel näitama programmi nime koos teega, so /sbin/hwclock. * operatsioonisüsteemi kell - see kell põhineb raua kellal, kuid ei pruugi sellega kokku langeda. Tarkvaraliselt saab süsteemi aega ka automaatselt korrigeerida kui näiteks raua kellal on omadus maha jääda. Enamus programme kasutab operatsioonisüsteemi aega.
bash~$ date
Neid kahte kella saab seada juurkasutaja järgmiselt:
Operatsioonisüsteemi kell
bash# date --set="12/31/1999 16:18:30"
BIOSi kell
bash# hwclock --systohc bash# hwclock --set --date="12/31/1999 16:18:30" bash# hwclock --hctosys
* --systohc tähendab, et raua kell seatakse süsteemi kella järgi * --set --date="12/31/1999 16:18:30" tähendab, et kella seatakse nagu real näidatud * --hctosys tähendab, et süsteemi kell seatakse raua kella järgi
Neid käske kasutades ja näiteks raadiost kellaega kuulates saab ilmselt arvuti kellaaega paljude praktiliste vajaduste rahuldamiseks piisavalt täpselt paika seada.
Kui teile ei meeldi aga nii kombineerida, siis järgmine, suuremat mugavust ja täpsust võimaldav variant on kasutada aja serveritena töötavaid interneti arvuteid ning programmi netdate näiteks madli.ut.ee
bash# netdate timehost.ut.ee
Sellise käsu andmiseks peate te tegutsema administraatori õigustes ning tulmusena seatakse teie arvuti süteemi aeg. Programm tuleb kaasa Slackware distributsiooniga.
Sarnaselt toimib programm rdate
bash# rdate -s timehost.ut.ee
Kui võtme -s asemel kasutada võtit -p, siis kella ei seata vaid ainult näidatakse, mis kauge masin ütleb kella olevat. Programm tuleb kaasa RedHati distributsiooniga.
Automaatne aja seadmine NTPga
Selleks, et arvuti kell püsiks pika aja vältel, näiteks nädal, õige tuleb teda regulaarselt võrrelda etalonkellaga ning vajadusel korrigeerida.
Eelmises punktis kirjeldatud programme leidlikult kasutades, näiteks crontabist, on võimalik arvuti kella automaatselt mingi eeskujuks valitud ajaserveriga kooskõlastada. Või kui olude sunnil tuleb teil masinat tihti käivitada, siis võib ka kirjeldatud käsud kirjutada arvuti alglaadimiskriptidesse.
Aja seadmisel on loomulik seda teha sujuvalt, see tähendab mitte järsku liigutada näiteks kahe sekundi võrra, vaid pigem teha seda viiskümmend korda viie minuti jooksul kuue sekundi tagant, korraga 40 millisekundit.
Sellist sujuvust ja muud pakub spetsiaalne NTP (Network Time Protocol) tarkvara.
NTP kasutamine eeldab kokkulepet üldaktsepteeritava kellaaja etaloni suhtes. Tänapäeval on selleks üldtunnustatult GPS. NTP süsteemis on olemas esimesse, teise, kolmandasse jne kihti (ingl. k. stratum) kuuluvad NTP serverid ning kliendid. Seda hierarhiat kujutab skeem
/--\ | | - GPSi satelliit taeva all \__/ -------------------------------------------------------------------- --|-- --|-- 1. kiht | | | | GPSi seadmega ühendatud ----- ----- arvutid -------------------------------------------------------------------- 2. kiht ----- ----- ----- ----- |_____| |_____| |_____| |_____| stratum 1 arvutite kliendid --------------------------------------------------------------------- 3. kiht |_____| |_____|
Esimese kihi masinate kellaaeg on kõige täpsem, nad on ühenduses etalonkellaga, näiteks GPSi seadme abil satelliitidega. Selliseid masinad on maailmas vaid mõned sajad ning tavakasutajal ei ole viisakas nende kliendiks otse asuda.
Teise kihi NTP masin on seatud kliendiks esimese kihi masinale. Tavaliselt näidatakse iga NTP serveri jaoks ära kolm temast ülespoole jäävat serverit kusjuures töö käigus kasutatakse korraga ühte, kõige sobivamat aeg-ajalt kontrollides, kas kasutatav on ikka kõige sobivam. Teise kihi masin on omakorda ise serveriks endast allapoole jäävatele kolmanda kihi NTP masinatele.
Kolmanda kihi masinad asuvad ja teenindavad tüüpiliselt kohalikke võrke. Võrkudes asuvad ülejäänud arvutid, nö NTP kliendid kuuluvad seega neljandasse kihti. Suurte kohalike võrkude puhul soovitatakse tekitada veel üks kohalik tase, viies kiht. Nii tekitatakse mõned asutusesised kolmanda kihti NTP serverid, mille klientideks saavad neljanda kihi NTP serverid mis omakorda teenindavad nö lõppkliente. Kuigi NTP protokoll võimaldab kuuteist kihti ei soovitata kasutada üle viie-kuue kuna alumistel kihtidel vead suurenevad.
NTP protokolli kohaselt on võimalik kellaaja hoidmine täsusega sadu pikosekundeid. Praktiliselt on see interneti puhul suurusjärgus millisekundeid.
NTP kasutamine
Enne NTP kasutamist tuleb leida endale sobiv NTP server. Eesti oludes tuleks kasutada teise kihi servereid, valige kolm füüsiliselt lähimat:
* tallinn-gw.bb.eenet.ee (193.40.133.33) * tartu-gw.bb.eenet.ee (193.40.133.34) * parnu-gw.bb.eenet.ee (193.40.133.35) * werro-gw.bb.eenet.ee (193.40.133.36) * rakvere-gw.bb.eenet.ee (193.40.133.37) * haapsalu-gw.bb.eenet.ee (193.40.133.39) * paide-gw.bb.eenet.ee (193.40.133.40) * rapla-gw.bb.eenet.ee (193.40.133.41)
Viidet http://www.eecis.udel.edu/~mills/ntp/clock2.htm järgides leiate nimekirja üle maailma laiali asuvatest vabalt kasutatada olevatest teise kihi ajaserveritest.
Järgnevas vaatleme lihtsalt juhtu, mis kehtib nii NTP kliendi ehk lõppkasutaja, kui ka sellise masina jaoks, mis on omakorda teistele, endast allapoole jääva kihi masinatele NTP serveriks.
Eeldades, et sobiv tarkvara on teie masinasse juba installeeritud tuleb esmalt kell panna enamvähem paika, näiteks NTP enda vahenditega, programmiga ntpdate
bash# ntpdate tartu-gw.bb.eenet.ee
NTP konfiguratsioonifail /etc/ntp.conf on lihtsamal juhul selline
server tartu-gw.bb.eenet.ee server werro-gw.bb.eenet.ee server paide-gw.bb.eenet.ee driftfile /etc/ntp.driftfile
Parameetri server taga tuleb näidate ülespoole jääv NTP server, kellelt teie hakkate kellaaega saama. Parameetri driftfile järel näidatakse faili nimi, mille NTP ise tekitab töö käigus ja seal olev arv on seotud teie arvuti ebarütmilisusega, mida on vaja NTP töö jätkamiseks, kui näidatud ülemise kihi serverid ajutiselt ei peaks töötama. Ülalpool asuvad serverid tuleks valida nii, et nad on üksteisest sõltumatud, st jälgides NTP hierarhiat viivad nad välja erinevate GPSi seadmetega ühendatud masinateni.
NTP serveri käivitamine toimub selliselt
bash# ntpd -l /var/log/ntp.log
kus võtme -l taga on näidatud NTP logi faili nimi.
Kui te muudate serveri konfiguratsiooni, siis on lihtsaim server seisata ning taas käivitada. Seiskamine toimub näiteks prototsessi lõpetamisega
bash# killall ntpd
NTP serveril kulub peale käivitamist ivake aega (ca 8 minutit), et sünkroniseeruda endast üleval pool oleva serveriga.
Programmi ntpq abil saab näha, millised masinad on konfigureeritud teie jaoks NTP serveriteks ja millist neist parasjagu kasutatakse (tärniga tähistatud)
bash# ntpq -p ntp.zoo.tartu.ee remote refid st t when poll reach delay offset jitter
==================================================================
+werro-gw.bb.eenet.ee ntp.eenet.ee 2 u 253 1024 377 12.284 2.729 0.613 +paide-gw.bb.eenet.ee ntp.eenet.ee 2 u 322 1024 377 3.262 0.899 0.004
- tartu-gw.bb.eenet.ee ntp.eenet.ee 1 u 322 1024 377 3.600 1.043 0.018
Selleks, et näha kus te asute NTP hierarhias, kasutage programmi ntptrace
bash# ntptrace ntp.zoo.tartu.ee ntp.zoo.tartu.ee: stratum 3, offset 0.000010, synch distance 0.02834 tartu-gw.bb.eenet.ee: stratum 2, offset 0.000010, synch distance 0.02834 ntp.eenet.ee: stratum 1, offset 0.000613, synch distance 0.00053, refid 'GPS'
Programmi väljundist näeme, et masin ntp.zoo.tartu.ee asub ise kolmandas kihis, kusjuures ta suhteb teise kihi masinaga tartu-gw.bb.eenet.ee mida omakorda korrigeerib ntp.eenet.ee.
Kui te olete üksikkasutaja, siis sellega asi jääb. Aga kui te tekitate näiteks modemi abil ainult lühiajalisi internetti ühendumisi, mis ei kesta piisavalt pikka aega (mõni tund), et tekiks driftfail, siis on teil mõtekas piirduda üldse vaid arvuti kell seadmisega programmi ntpdate abil.
Soovides hoida kogu kohaliku arvutivõrgu moodustavate masinate kellad NTP abil õiged, peate kirjeldatud moel tööle seadma oma võrgu ühe arvuti, kohaliku NTP serveri. Ülejäänud arvutid tuleb konfigureerida kohaliku NTP serveri klientideks. See toimub sarnaselt, ülaltoodud konfiguratsioonifail sobib nii NTP serveri kui ka kliendi jaoks. Antud juhul jäävad kohalikud kliendid neljandasse kihti. NTP installeerimine
Tarkvara installeerimiseks külastage veebikohta http://www.eecis.udel.edu/~ntp/software.html ning valige omale sobiv.
Varasemate NTP versioonide puhul oli kombeks mõningate NTP komplekti programmide nimesid alustada x tähega, näiteks RedHati distributsioonides kannab deemon ntpd nime xntpd. NTP kliendi installeerimine Windowsi jaoks
NTP kliente on eelmises punktis toodud viidet järgides võimalik leida terve hulga, mõned neist:
* Windows NT 4.0 jaoks võiks soovitada suhteliselt pisikest programmi NTPTime. * Tunduvalt suurem ja võimalusterohkem on WorldTime. * Programm Nettime sobib kõigile Windowsidele (NT/95/98) ja mille kasutamisjuhendi leiate siit. * Programm Automachron sobib kõigile Windowsidele (NT/95/98) ning seda jagatakse ilma rahata tema kodulehel.. Kasutusjuhendi leiate siit. * Programm WinSNTP sobib kõigile Windoswitele, teda müüakse paarikümne dollari eest, mis on vaja tasuda kui 30-päevane prooviperioodi veenis teid tarkvara headuses. Kasutusjuhend.
Kasulikud lisamaterjalid
* NTP veebikoht * NTP FAQ * The Time of Internet