ntp-4.2.8p18

Introduksjon til ntp

ntp pakken inneholder en klient og server for å holde tiden synkronisert mellom ulike datamaskiner over et nettverk. Denne pakken er den offisielle referanseimplementeringen av NTP protokollen.

[Notat]

Notat

Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden den siste stabile versjonene av bøkene.

Pakkeinformasjon

ntp Avhengigheter

Påkrevd

IO-Socket-SSL-2.089

Valgfri

libcap-2.72 med PAM, libevent-2.1.12, libedit, og libopts fra AutoGen

Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/ntp

Installasjon av ntp

Det bør være en dedikert bruker og gruppe til å ta kontroll over ntpd nissen etter den er startet. Utfør følgende kommandoer som root bruker:

groupadd -g 87 ntp &&
useradd -c "Network Time Protocol" -d /var/lib/ntp -u 87 \
        -g ntp -s /bin/false ntp

Løs et typeproblem ved å kjøre

sed -e "s;pthread_detach(NULL);pthread_detach(0);" \
    -i configure \
       sntp/configure

Installer ntp ved å kjøre følgende kommandoer:

./configure --prefix=/usr         \
            --bindir=/usr/sbin    \
            --sysconfdir=/etc     \
            --enable-linuxcaps    \
            --with-lineeditlibs=readline \
            --docdir=/usr/share/doc/ntp-4.2.8p18 &&
make

To test the results, issue: make check.

Nå, som root bruker:

make install &&
install -v -o ntp -g ntp -d /var/lib/ntp

Parameterforklaringer

--bindir=/usr/sbin: Denne parameteren plasserer de administrative programmene i /usr/sbin.

--enable-linuxcaps: ntpd kjøres som bruker ntp, så bruk Linux-funksjoner for ikke-root klokkekontroll.

--with-lineeditlibs=readline: Denne bryteren aktiverer Readline støtte for ntpdc og ntpq programmer. Hvis utelatt, libedit brukes hvis den er installert, ellers ingen readline funksjoner vil bli kompilert.

Konfigurere ntp

Konfigurasjonsfiler

/etc/ntp.conf

Konfigurasjonsinformasjon

Følgende konfigurasjonsfil definerer først forskjellige ntp servere med åpen tilgang fra forskjellige kontinenter. For det andre, den oppretter en drift fil hvor ntpd lagrer frekvensforskyvning og en pid-fil for å lagre ntpd prosess-ID. Siden dokumentasjonen inkludert med pakken er sparsom, besøk ntp nettstedet på https://www.ntp.org/ og https://www.ntppool.org/ for mer informasjon.

cat > /etc/ntp.conf << "EOF"
# Asia
server 0.asia.pool.ntp.org

# Australia
server 0.oceania.pool.ntp.org

# Europe
server 0.europe.pool.ntp.org

# North America
server 0.north-america.pool.ntp.org

# South America
server 2.south-america.pool.ntp.org

driftfile /var/lib/ntp/ntp.drift
pidfile   /run/ntpd.pid
EOF

Det kan være lurt å legge til en «Security session.» For forklaringer, se https://www.eecis.udel.edu/~mills/ntp/html/accopt.html#restrict.

cat >> /etc/ntp.conf << "EOF"
# Security session
restrict    default limited kod nomodify notrap nopeer noquery
restrict -6 default limited kod nomodify notrap nopeer noquery

restrict 127.0.0.1
restrict ::1
EOF

Synkronisering av tiden

Det er to alternativer. Alternativ en er å kjøre ntpd kontinuerlig og la den synkronisere tiden på en gradvis måte. Det andre alternativet er å kjøre ntpd med jevne mellomrom (ved hjelp av cron) og oppdater tiden hver gang ntpd er planlagt.

Hvis du velger alternativ en, installer da /etc/rc.d/init.d/ntp init skriptet inkludert i blfs-bootscripts-20240913 pakken.

make install-ntpd

Hvis du foretrekker å kjøre ntpd med jevne mellomrom, legg til følgende kommando til root sin crontab:

ntpd -q

Utfør følgende kommando hvis du vil angi maskinvareklokke til gjeldende systemtid ved avslutning og omstart:

ln -v -sf ../init.d/setclock /etc/rc.d/rc0.d/K46setclock &&
ln -v -sf ../init.d/setclock /etc/rc.d/rc6.d/K46setclock

Omvendt er allerede satt opp av LFS.

Innhold

Installerte Programmer: calc_tickadj, ntp-keygen, ntp-wait, ntpd, ntpdate, ntpdc, ntpq, ntptime, ntptrace, sntp, tickadj, og update-leap
Installerte Biblioteker: None
Installerte Mapper: /usr/share/ntp, /usr/share/doc/ntp-4.2.8 og /var/lib/ntp

Korte Beskrivelser

calc_tickadj

beregner optimal verdi for tick gitt ntp drift fil

ntp-keygen

genererer kryptografiske datafiler som brukes av NTPv4 autentiseringen og identifiseringsordninger

ntp-wait

er nyttig ved oppstart, for å utsette oppstartssekvensen til ntpd har satt tiden

ntpd

er en ntp nisse som kjører i bakgrunnen og beholder dato og klokkeslett synkronisert basert på svar fra konfigurerte ntp servere. Den fungerer også som en ntp server

ntpdate

er et klientprogram som setter dato og klokkeslett basert på svaret fra en ntp server. Denne kommandoen er utdatert

ntpdc

brukes til å spørre ntp nissen om dens nåværende tilstand og å be om endringer i den tilstanden

ntpq

er et hjelpeprogram som brukes til å overvåke ntpd operasjoner og bestemme ytelse

ntptime

leser og viser tidsrelaterte kjernevariabler

ntptrace

sporer en kjede av ntp servere tilbake til primærkilden

sntp

er en Simple Network Time Protocol (SNTP) klient

tickadj

leser, og eventuelt modifiserer, flere tidtakingsrelaterte variabler i eldre kjerner som ikke har støtte for presisjon tidtaking

update-leap

er et skript for å bekrefte og, om nødvendig, oppdatere sprangsekundet sin definisjonsfil.

[Notat]

Notat

I november 2022, på den 27. generalkonferansen om vekter og målinger, ble det besluttet å forlate sprangsekundet. I tillegg dette skriptet hardkoder en URL for en oppdateringsfil som ikke lenger finnes. Sist gang et sprangsekund ble erklært var januar 2017. Dette skriptet vil sannsynligvis bli fjernet i en fremtidig utgivelse.