Muokataan sivua NTP
Siirry navigaatioon
Siirry hakuun
Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.
Nykyinen versio | Oma tekstisi | ||
Rivi 1: | Rivi 1: | ||
Tietokoneen kello ei yleensä pysy kovin hyvin ajassa ja ajan asettaminen tarkasti luotettavasta lähteestä | Tietokoneen kello ei yleensä pysy kovin hyvin ajassa ja ajan asettaminen tarkasti luotettavasta lähteestä voi olla hankalaa. Eräs ratkaisu tähän on käyttää Internetistä löytyviä aikapalvelimia NTP-protokollan kautta. Tässä artikkelissa kerrotaan NTP-protokollaa käyttävän ntpd-[[daemoni]]n asentamisesta ja käyttämisestä. | ||
==Yleistä== | ==Yleistä== | ||
Ntpdate asettaa kellon aikaan halutun aikapalvelimen mukaan. Ntpdaten käyttämä NTP-protokolla mahdollistaa kellon tarkan synkronoinnin aikapalvelimelta. Ntpdatessa on kuitenkin se huono puoli, että se ei säädä tietokoneen kellon käyntinopeutta. Kellon saa asetettua aikaan, mutta sitten se ryömii itsekseen taas pois ajasta. | |||
Ntpd pitää yhteyttä aikapalvelimiin ja säätää kellon käyntinopeutta "jatkuvasti". Yksi hyvä puoli verrattuna esimerkiksi cronissa ajettavaan ntpdate komentoon on se, ettei kellonaika muutu hyppäyksittäin aina synkronoitaessa. Linux sisältää kellonsäätömekanismin, jota ntpd käyttää. Kun tietokoneen kellon käyntinopeus on mitattu, ei ntpd:tä enää periaatteessa tarvita, sillä Linux säätää itse kellon käyntinopeutta. Näin kello pysyy ajassa vaikka Internet-yhteys katkeaisikin. Todellisuudessa ryömintänopeus luultavasti muuttuu ajan saatossa. | |||
Ntpd pitää yhteyttä aikapalvelimiin ja säätää kellon käyntinopeutta "jatkuvasti". Yksi hyvä puoli verrattuna esimerkiksi | |||
Aikapalvelimien yhteydessä mainitaan usein ''stratum''-arvo. Stratum kertoo, miten kaukana atomikellosta tai muusta tarkasta ajanlähteestä kyseinen palvelin on. Stratum 0 on itse kello tai laite, joka ylläpitää aikaa tai saa sen radiolähetyksistä, esimerkiksi GPS-signaalista. Stratum 1 on aikapalvelin, joka on suoraan kytkettynä em. kelloon. Stratum 2 on stratum 1 -palvelimelta ajan saava palvelin jne. | Aikapalvelimien yhteydessä mainitaan usein ''stratum''-arvo. Stratum kertoo, miten kaukana atomikellosta tai muusta tarkasta ajanlähteestä kyseinen palvelin on. Stratum 0 on itse kello tai laite, joka ylläpitää aikaa tai saa sen radiolähetyksistä, esimerkiksi GPS-signaalista. Stratum 1 on aikapalvelin, joka on suoraan kytkettynä em. kelloon. Stratum 2 on stratum 1 -palvelimelta ajan saava palvelin jne. | ||
Rivi 12: | Rivi 10: | ||
Ntpd voidaan asettaa tarkkailemaan useita aikapalvelimia, joista se käyttää aina parhaaksi toteamaansa mm. verkkoliikenteen viiveiden perusteella. Yksityiskäyttäjien tulisi välttää kuormittamasta stratum 1 -palvelimia, joten kannattaa valita joitakin stratum 2- tai stratum 3 -palvelimia ntpd:lle seurattaviksi. Esimerkiksi yliopistot ja jotkin operaattorit ylläpitävät aikapalvelimia. | Ntpd voidaan asettaa tarkkailemaan useita aikapalvelimia, joista se käyttää aina parhaaksi toteamaansa mm. verkkoliikenteen viiveiden perusteella. Yksityiskäyttäjien tulisi välttää kuormittamasta stratum 1 -palvelimia, joten kannattaa valita joitakin stratum 2- tai stratum 3 -palvelimia ntpd:lle seurattaviksi. Esimerkiksi yliopistot ja jotkin operaattorit ylläpitävät aikapalvelimia. | ||
==Asennus ja konfigurointi== | |||
Ntp-ohjelmisto löytyy esimerkiksi NTP-projektin kotisivuilta, mutta se löytyy myös käytännössä kaikkien jakeluiden [[paketinhallintajärjestelmä|paketinhallinnasta]] (etsi paketteja ntp, ntpd ja ntpdate). | Ntp-ohjelmisto löytyy esimerkiksi NTP-projektin kotisivuilta, mutta se löytyy myös käytännössä kaikkien jakeluiden [[paketinhallintajärjestelmä|paketinhallinnasta]] (etsi paketteja ntp, ntpd ja ntpdate). | ||
Seuraavaksi pitää muokata <tt>ntp.conf</tt>- | Seuraavaksi pitää muokata <tt>ntp.conf</tt>-tiedostoa, joka luultavimmin löytyy /etc-[[Linuxin hakemistorakenne|hakemistosta]] (voit etsiä sitä komennolla <tt>[[locate]] ntp.conf / locate ntpd.conf</tt>). Jakelusta riippuen tiedostossa voi jo olla joitain asetuksia, mutta ainakin aikapalvelimet sinne pitää määrittää. Lista julkisista aikapalvelimista löytyy mm. [http://www.eecis.udel.edu/~mills/ntp/clock2a.html täältä] ja ainakin ntp1.inet.fi on olemassa. Otetaan käyttöön esimerkiksi funetin ja eunetin palvelimet lisäämällä tiedostoon rivit: | ||
server ntp.eunet.fi | |||
server | server ntp1.funet.fi | ||
server | |||
HUOM! Ntpd kuuntelee paitsi aikapalvelimia, se myös saattaa ottaa vastaan yhteyksiä mistä tahansa. Kannattaa siis varmistaa, että vain omalta koneelta on mahdollista päästä antamaan komentoja käynnissä olevalle ntpd:lle varmistamalla, että asetustiedostosta löytyy rivit: | HUOM! Ntpd kuuntelee paitsi aikapalvelimia, se myös saattaa ottaa vastaan yhteyksiä mistä tahansa. Kannattaa siis varmistaa, että vain omalta koneelta on mahdollista päästä antamaan komentoja käynnissä olevalle ntpd:lle varmistamalla, että asetustiedostosta löytyy rivit: | ||
restrict default | restrict default notrust nomodify | ||
restrict 127.0.0.1 | restrict 127.0.0.1 | ||
Rivi 41: | Rivi 26: | ||
driftfile /etc/ntp.drift | driftfile /etc/ntp.drift | ||
Tämän jälkeen ntpd:n pitäisi olla valmis käynnistettäväksi. Ntpd-palvelun käynnistäminen on jakelukohtainen toimenpide, ja lisäksi jotkin jakelut voivat vaatia lisäasetuksia. Käynnistäminen onnistunee suunnilleen seuraavasti: | |||
# ntpd | |||
# | |||
tai | tai | ||
# | # /etc/init.d/ntpd start | ||
tai | tai | ||
# | # /etc/init.d/ntp start | ||
Kun ntpd-palvelu on ollut käynnissä jonkin aikaa, voi tilanteen tarkistaa <tt>ntpq -p</tt> -komennolla: | Kun ntpd-palvelu on ollut käynnissä jonkin aikaa, voi tilanteen tarkistaa <tt>ntpq -p</tt> -komennolla: | ||
$ ntpq -p | $ ntpq -p | ||
remote refid st t when poll reach delay offset jitter | |||
============================================================================== | ============================================================================== | ||
-ns3.inet.fi seepra.express. 2 u 599 1024 377 66.266 -22.486 0.417 | |||
+ | +ns1.eunet.fi ntp2.sth.netnod 2 u 385 1024 377 88.612 11.875 7.267 | ||
+ | +ntp1.funet.fi ntp4.mikes.fi 2 u 384 1024 377 94.987 15.874 21.865 | ||
*ns2.clinet.fi ntp1.sth.netnod 2 u 376 1024 377 70.285 3.683 3.461 | |||
Tulosteessa tähti palvelimen nimen edessä tarkoittaa tällä hetkellä pääpalvelimeksi valittua aikapalvelinta, plus tarkoittaa kandidaattia ja miinus syystä tai toisesta hylättyä palvelinta. Reference id:n jälkeen tulee palvelimen stratum-arvo st, tyyppi t (local, unicast, multicast tai broadcast), miten kauan sitten edellinen NTP-paketti vastaanotettiin (when) ja mikä on kyselyväli (poll) sekunneissa. Viive (delay), aikaero (offset) ja hajonta (jitter) ovat millisekunneissa. | Tulosteessa tähti palvelimen nimen edessä tarkoittaa tällä hetkellä pääpalvelimeksi valittua aikapalvelinta, plus tarkoittaa kandidaattia ja miinus syystä tai toisesta hylättyä palvelinta. Reference id:n jälkeen tulee palvelimen stratum-arvo st, tyyppi t (local, unicast, multicast tai broadcast), miten kauan sitten edellinen NTP-paketti vastaanotettiin (when) ja mikä on kyselyväli (poll) sekunneissa. Viive (delay), aikaero (offset) ja hajonta (jitter) ovat millisekunneissa. | ||
==Mahdollisia ongelmia== | |||
*Jos ntpd ei suostu käynnistymään, vaan valittaa siitä, että koneesi kello on liian kaukana oikeasta ajasta, voit asettaa kellon käsin | *Jos ntpd ei suostu käynnistymään, vaan valittaa siitä, että koneesi kello on liian kaukana oikeasta ajasta, voit asettaa kellon käsin suurinpiirtein oikeaan aikaan [[date]]-komennolla tai pakottaa ntpd:n asettamaan ajan komennolla | ||
ntpd -q -g | ntpd -q -g | ||
Tämä vastaa | Tämä vastaa suurinpiirtein sitä, mitä ntpdate komento tekee. Ntpdate ohjelma on vanhentunut ja se on poistumassa ohjelmistosta. | ||
*Mikäli <tt>ntp.conf</tt>-tiedostoon tekemäsi asetukset mystisesti katoavat ja käytät DHCP:tä, voi syynä olla se, että DHCP-asiakasohjelma saa DHCP-palvelimelta jotkin asetukset ja ylikirjoittaa <tt>ntp.conf</tt>:n. Tämän voi luultavasti kaikissa DHCP-asiakasohjelmissa myös kieltää. | |||
* | |||
[[Luokka:Järjestelmä]] | [[Luokka:Järjestelmä]] | ||
[[Luokka:Ylläpitotyökalut]] | [[Luokka:Ylläpitotyökalut]] |