Aceasta este comanda radioclkd care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS
PROGRAM:
NUME
radioclkd - decodificarea timpului de la ceasul(e) radio atașat la portul serial
REZUMAT
radioclkd [ -tphv ] dispozitiv
DESCRIERE
radioclkd este un simplu daemon care decodifică ora de la un dispozitiv de ceas radio atașat la
liniile de stare DCD și/sau CTS și/sau DSR ale portului serial al unui computer. Este capabil să
decodați semnalele de timp DCF77, MSF și WWVB. Ora primită este apoi trimisă la ntpd folosind
driverul de ceas de referință pentru memorie partajată. Tipul de semnal orar primit este
determinată automat. Dacă întâmpinați probleme pentru a funcționa programul folosind
întreruperi, se știe că următoarea comandă ajută în multe cazuri. Dacă acest lucru te defectează
poate reveni oricând la metoda de votare.
stty crtscts < /dev/ttyS0
Puteți găsi detalii despre un dispozitiv ieftin și ușor de realizat pentru recepția acestor semnale de timp
at
http://www.buzzard.org.uk/jonathan/radioclock.html
OPŢIUNI
-p, --sondaj
Interogați mai degrabă portul serial pentru modificări de stare în liniile DCD, CTS și DSR
decât să folosești întreruperi
-t, --Test
Intrați în modul de testare imprimând lungimea fiecărui impuls și timpul decodificat la sfârșit
din fiecare minut pe stdout. Ora nu este trimisă la ntpd folosind memoria partajată
driverul ceasului de referință în acest mod.
-h, --Ajutor
Tipăriți un scurt rezumat al argumentelor liniei de comandă.
-v, --versiune
Tipăriți numărul versiunii și apoi ieșiți.
CONFIGURARE
Configurarea este foarte simplă. Utilizați serverul 127.127.28.0 în fișierul dvs. ntp.conf pentru un ceas
atașat la linia DCD, serverul 127.127.28.1 pentru un ceas atașat la linia CTS și
server 127.127.28.2 pentru un ceas atașat la linia DSR. De asemenea, veți dori să utilizați un
linie fudge pe server pentru a schimba refidul afișat.
CALIBRARE
Din cauza întârzierilor în propagarea semnalului radio, acesta este procesat de către receptor
bord și latența sistemului de operare va fi timpul decodat de receptor
ușor decalat față de ora UTC reală. De obicei, această întârziere va fi mai mică de 20 ms, deci dacă nu
sunteți foarte agitat cu timpul sau utilizați mai multe surse de timp, cum ar fi un GPS
unitate, alt ceas radio sau server NTP de pe internet puteți ignora această secțiune.
Elementele de bază ale procedurii de calibrare sunt determinarea offset-ului mediu al radioului
receptor și utilizați factorul time1 fudge din ntp.conf pentru a aduce receptorul cât mai aproape
posibilă în timp real. Cel mai simplu mod de a determina offset-ul radioului
timpul receptorilor este să-l ruleze pe un ceas de referință care nu suferă de acestea
Probleme. Cel mai bun ceas de referință ar fi o unitate GPS. Aceasta ar putea fi o unitate GPS pe care dvs
nu doriți să vă dedicați timpului sau unei unități împrumutate. Dacă acest lucru nu este posibil tu
ar putea folosi un server de strat 1 pe internet.
Metoda de calibrare este destul de simplă. Atașăm ceasul de referință de calibrare la
computerul și zdrobiți stratul receptorului nostru radio până să spunem 5. În felul acesta putem fi
asigurați-vă că ntpd se va bloca pe ceasul de referință de calibrare. Trebuie să ne asigurăm că
ntpd este configurat pentru a colecta statistici peer, așa că asigurați-vă că avem câteva linii similare cu
acestea în ntp.conf
statsdir /var/log/ntpstats/
statistici loopstats peerstats clockstats
filegen peerstats fișier peerstats tip day enable
După aceea repornim ntpd și îl lăsăm să funcționeze câteva ore. Apoi putem face o copie
fișierul peerstats. Trucul este să eliminați toate intrările înainte ca ntpd să fie aproape
agrement cu ceasul de referință de calibrare și apoi rulați scriptul peer.awk în
directorul scripts/stats al distribuției ntp. Acest lucru ne va oferi o compensare medie a noastră
receptoare radio în milisecunde. Acestea pot fi convertite în secunde și adăugate la
linie fudge în ntp.conf pentru receptorul nostru.
Pasul final este eliminarea modificării nivelului stratului pentru ceasul nostru de referință și
reporniți ntpd. Dacă mutați receptorul la o distanță semnificativă, va trebui
repetați acest pas de calibrare. În toată camera sau în jurul clădirii actuale va fi bine,
dar dacă îl mutați în următorul oraș/oraș, va trebui să recalibrați.
IN UTILIZAȚI
Versiunea de ntpd care vine cu majoritatea distribuțiilor Linux nu are partajat
driverul de ceas de referință de memorie compilat în mod implicit. Acest lucru poate fi identificat prin verificare
buştenii după ntpd este pornit. Dacă driverul de ceas de referință pentru memorie partajată nu este
compilate, apoi jurnalele vor conține avertismente despre lipsa driverului de ceas de referință
recunoscut. A compila ntpd cu driverul de ceas de referință pentru memorie partajată trebuie să specificați
il --enable-SHM opțiunea când rulați configure.
Nici radioclkd or ntpd marcați vreodată segmentul de memorie partajată pentru ștergere. Dacă te oprești
folosind driverul de ceas de referință pentru memorie partajată, prin urmare, orice segment de memorie partajată va fi
persistă până când reporniți sau ștergeți manual segmentul folosind ipcrm. Segmentele pot fi
identificat ca fiind cel cu cheia 0x4e545030, 0x4e545031 sau 0x4e545032 folosind ipcs
comanda.
Utilizați radioclkd online folosind serviciile onworks.net