Non devo impostare l'orologio (oltre al fuso orario) sul Raspberry Pi. Da dove arriva il tempo? Quanto è preciso?
Non devo impostare l'orologio (oltre al fuso orario) sul Raspberry Pi. Da dove arriva il tempo? Quanto è preciso?
Risposte:
Raspbian ottiene l'ora da un server NTP (un "time server").
Scollegare completamente Raspberry Pi, estrarre il cavo di rete e riavviare Raspberry Pi. Vedrai che la data e l'ora non sono corrette.
Se si desidera / bisogno la data e l'ora di non essere ripristinato senza essere collegato a Internet, avrete bisogno di un orologio in tempo reale (RTC) - per esempio, qualcosa di simile a questa - che manterrà l'attuale tempo, utilizzando una batteria per eseguire un orologio. Questo è anche il modo in cui il tuo computer mantiene l'ora quando non viene alimentato.
AGGIORNAMENTO Solo una nota a margine che il precedente orologio RTC non è l'unico modo per mantenere il tempo preciso tra le perdite di potenza. È inoltre possibile utilizzare un modulo GPS e collegarlo ai pin GPIO.
Precisione È abbastanza preciso, anche se l'ora dell'orologio è un po 'spenta. Potrebbero essere necessarie fino a 3 ore per correggersi, poiché le modifiche dal server vengono applicate gradualmente all'orologio locale. La stabilità della rete ha il maggiore impatto sull'accuratezza, poiché una rete imprevedibile (qualcosa di più wireless, come il 3G ) renderà molto difficile essere precisi. Per dirla semplicemente: la precisione è piuttosto buona, la differenza di tempo tra il tuo computer e l'ora effettiva (dal server NTP) è normalmente inferiore a 100ms .
La risposta di Morgan mi ha dato il suggerimento di cui avevo bisogno per risolvere il problema.
Vai su http://support.ntp.org/bin/view/Servers/NTPPoolServers
Seleziona la tua regione, verranno visualizzati il tuo paese e un elenco di server.
Modifica il tuo file /etc/ntp.conf ad es
sudo vim /etc/ntp.conf
Sostituisci l'elenco dei server con quello che hai trovato nella pagina web. per esempio
server 0.dk.pool.ntp.org
server iburst 1.dk.pool.ntp.org
server iburst 2.dk.pool.ntp.org
server iburst 3.dk.pool.ntp.org iburst
Salva ed esci.
Riavvia il deamon ntp.
sudo /etc/init.d/ntp restart
controlla che la data sia corretta.
data
Gio 20 giu 13:39:20 CEST 2013
In uno dei miei server la data è stata cambiata immediatamente. Nell'altro ho dovuto aspettare un paio di minuti.
server 0.uk.pool.ntp.org iburst
ntpq -p. Sto usando: "Raspbian GNU / Linux 7 (wheezy)" e "Linux raspberrypi 4.1.7+ # 817 PREEMPT sab 19 set 15:25:36 BST 2015 armv6l GNU / Linux"
hwclocko fake-hwclocksta interferendo (ma la parte "/etc/rc.conf" non è aggiornata)
ntpq -pparte è da una risposta a Come viene mantenuto il tempo sul Raspberry Pi? .
ntpq -pnon faceva differenza).
Se hai il fake-hwclockpacchetto , eseguirà anche un trucco di risparmio di data e ora per impedire il ripristino dell'orologio. Ciò non farà avanzare il tempo mentre il dispositivo è spento, quindi resterà indietro. Anche l'orologio interno si sposterà leggermente quando è acceso.
Se disponi di una connessione Internet (o lan con un server) ed esegui ntp (ntpd / ntpdate), puoi ottenere il tempo sulla rete, come indicano altre risposte. Quando sincronizzato, è davvero abbastanza preciso. I server online ti daranno anche il consenso "ora mondiale".
fake-hwclock. Perché qualcuno dovrebbe voler congelare l'orologio quando la macchina è spenta? Non riesco a pensare a un caso d'uso per quello. È lì?
fake-hwclockArch Linux, utilizzare archplusplus.co.uk/post/40202081414/…
Il Raspberry Pi non ha un orologio in tempo reale (RTC) integrato per il rapporto costo-efficacia: vedi la domanda "Perché non esiste un orologio in tempo reale (RTC)?" nelle FAQ ufficiali . Significa che quando si scollega il Raspberry Pi, perde tempo. Quando lo riaccendi, il tempo viene inizializzato al 1 ° gennaio 1970 (aka epoca Unix ).
Il Raspberry Pi imposta il suo tempo sulla rete con NTP , un protocollo per la sincronizzazione dell'orologio tra computer. Questo protocollo è ampiamente utilizzato su Internet per garantire che i computer abbiano lo stesso orario ed è altamente affidabile poiché alcune macchine sono dedicate al calcolo del tempo con orologi atomici .
ntpdè un demone (un software in background) lanciato all'avvio, ed è responsabile della sincronizzazione dell'ora usando il protocollo NTP. ntpdpuò essere configurato con il file /etc/ntp.conf. Ad esempio, è qui che è possibile impostare i server per richiedere l'ora.
dateora mostra quell'appuntamento di una settimana più, penso, qualche ora in più dal tempo di attività ieri e oggi (dopo alcuni riavvii ieri e oggi). (Raspbian, corrispondente a metà 2015).
cat /etc/fake-hwclock.datae vedrai l'ultima volta che hai fake-hwclockrisparmiato il tempo (ovviamente, al momento dello spegnimento). fake-hwclockviene utilizzato sull'RPi per imitare un orologio reale. Penso che tu abbia avviato il tuo RPi senza accesso a Internet o senza aver ntpdiniziato ad aggiornare l'ora. Puoi confermarlo?
Sembrerebbe che ci sia stato un po 'di cambiamento con Raspbian Stretch. In breve, ntp non è più installato. La corsa dpkg -l | grep ntpnon restituisce nulla.
Apparentemente, Stretch ha abbandonato l' ntpapplicazione a favore di systemd. Controlla la man timesyncdvoce per i dettagli sulle impostazioni di configurazione. timesyncdusa ancora server ntp per aggiornare l'ora. Se si desidera configurare questi server manualmente, è possibile farlo nel /etc/systemd/timesyncd.conffile.
sudo systemctl restart timesyncde successivamente controllare i log da parte journalctl -u timesyncd -fdei firewall aziendali a volte blocca la porta. In tali casi, utilizzare l'URL del server ntp aziendale fornito.
systemd-timesyncd, in modo che il comando da riavviare siasystemctl restart systemd-timesyncd
Se stai registrando o mantenendo il tempo quando offline è quello che stai cercando, potresti voler aggiungere un chip Real Time Clock , come il DS1307 .