Il Raspberry Pi non dispone di un orologio hardware. Come faccio a forzare NTPD ad aggiornare la data / ora immediatamente dopo ogni avvio?

Sto eseguendo Raspbian e il Raspberry Pi è connesso tramite un cavo Ethernet .

Commenti

  • Il mio lo fa già dal box. Quale disto stai usando?
  • Raspbian Wheezy
  • @Thorb Pi è connesso con cavo ethernet / dhcp. Semplicemente non ottiene una data valida dopo lavvio, ci vuole un po (Da 10 a 45 minuti)
  • Lo farà automaticamente, dopo un paio di minuti. Assicurati di averlo impostato per utilizzare lorologio principale del National Bureau of Standards, time.nist.gov come descritto qui: raspberrypi.stackexchange.com/questions/68811/…
  • Sembra che no uno ha ancora risposto a questa domanda in modo soddisfacente, ovvero come sincronizzare lora tramite NTP dopo un avvio (cioè senza riavviare).

Risposta

Dopo cercando in giro, questo metodo ha funzionato per me. Come saprai, Raspberry Pi 3 ha NTP disabilitato per impostazione predefinita. Quindi, digitando semplicemente questo, il supporto NTP sarà abilitato:

sudo timedatectl set-ntp True 

Controlla il risultato con timedatectl status

In caso di avviso, potrebbe essere necessario eseguire anche sudo timedatectl set-local-rtc true.

Commenti

  • Grazie, questo finalmente mi ha aiutato e sembra essere il modo corretto, nonostante le risposte precedenti.
  • Questa è la risposta migliore, mi ha aiutato molto. Puoi utilizzare ‘ sudo ‘ per evitare di digitare la tua password (utile per gli script che la eseguono). Qual è lo scopo del comando dei secondi? set-local-rtc

Risposta

Esegui un apt-get install ntpdate .

ntpdate verrà eseguito quando viene attivata uninterfaccia Ethernet e imposterà lora da un server ntp (vedere /etc/default/ntpdate).

Se ntpd è in esecuzione, ntpdate non farà nulla, tuttavia ntpdate verrà eseguito prima di ntpd allavvio, quindi dovrebbe funzionare per impostare lora allavvio purché sia presente una connessione Ethernet.

Commenti

  • stock Raspbian avrà già tutto questo.
  • @scruss mine didn ‘ t. (2013-02-09 wheezy rasbian)
  • Anche il mio no, doveva farlo manualmente.
  • Se è impostato correttamente, lo farà automaticamente, anche se potrebbero volerci alcuni minuti.
  • Linux raspberrypi 4.14.30-v7+ #1102 SMP Mon Mar 26 16:45:49 BST 2018 armv7l GNU/Linux ‘ non ce lavevo.

Risposta

Se il tuo orologio è lontano, potresti dover forzare la sincronizzazione di ntp eseguendo:

sudo /etc/init.d/ntp stop sudo ntpd -q -g sudo /etc/init.d/ntp start 

Commenti

  • Restituisce errore ” sudo: ntpd: comando non trovato ”
  • ntpd deve essere installato per utilizzare il comando
  • è installato, non sono così ignorante 🙂
  • Potresti visitare raspberrypi.stackexchange.com/questions/47542/… ? Ho pubblicato i dettagli lì.
  • Questa era assolutamente la soluzione al mio problema, ma ho scoperto che era temporanea fino al riavvio. Alla fine ho riscontrato un errore nello spegnimento che non poteva ‘ aggiornare hwclock perché lorologio hw aveva una data futura (non ho idea di come sia successo). Ma la soluzione era una forza di aggiornamento di hwclock. Ciò ha forzato laggiornamento al falso orologio hardware e quindi allavvio lora era almeno vicina a quella corrente, quindi ntp poteva farlo ‘ normalmente.

Risposta

Se imposti il fuso orario in raspi-config, Raspberry Pi aggiornerà automaticamente il tempo allavvio, se connesso a Internet.

  1. sudo raspi-config
  2. Seleziona Internationalisation Options
  3. Seleziona I2 Change Timezone
  4. Seleziona la tua area geografica
  5. Seleziona la città più vicina
  6. Seleziona Finish
  7. Seleziona Yes per riavviare ora

Commenti

  • questo ha funzionato bene per me
  • I2 Change Timezone opzione non ‘ non esiste più
  • Esiste, almeno in Raspbian Buster.
  • ” Opzioni di internazionalizzazione ” è ora chiamato ” Opzioni di localizzazione ”
  • ” città più vicina ” non è il modo corretto. devi selezionare la città a cui appartiene il tuo fuso orario, che può essere il più vicino o meno …

Risposta

Vedi post nel forum Ora non si sincronizza su Pi 3 e con il dongle ufficiale .

ntpd emette pacchetti IP / UDP con il Campo ToS impostato su 0xc0. Quindi è abbastanza simile allaltro problema che io (e molti altri) ho con Raspberry Pi3 quando viene utilizzato su uninterfaccia interna Wi-Fi.

Come soluzione alternativa, aggiungi il comando

/sbin/iptables -t mangle -I POSTROUTING 1 -o wlan0 -p udp --dport 123 -j TOS --set-tos 0x00 

nel file

/etc/rc.local 

prima della riga 0 di uscita. Quindi, riavvia e controlla.

Commenti

  • Ho avuto lo stesso problema quando ho installato lRPi3 che avevo per XMas, e tu hai risolto il mio problema. Fantastico !!!

Risposta

Questa domanda sembra essere ” ha riciclato ” per qualche motivo, quindi sembra appropriato riciclare anche alcune vecchie risposte 🙂

Lanno è ora il 2021 …

Questa domanda è stata posta nel 2013. ntpd era il software di misurazione del tempo incluso nella distribuzione Raspbian a quel tempo (wheezy) . Tuttavia, ciò è cambiato con la distribuzione stretch nel 2017, quando systemd-timesyncd ha sostituito ntpd. Le ragioni di questo cambiamento e alcuni compromessi tecnici sono stati discussi in questa vecchia risposta per coloro che sono interessati a queste cose.

Rispetto alla domanda qui, forse il punto più saliente nell ambiente corrente (post- systemd) è questo: se decidi di installare ntpd nella tua attuale distribuzione Raspbian, sappi che systemd-timesyncd ” farà la cosa giusta “! Controllerà la presenza di altri daemon NTP e adatterà il suo comportamento di conseguenza; funziona solo . Puoi leggere tutto ciò inserendo questo nella riga di comando:

$ systemctl cat systemd-timesyncd 

Nota le ultime righe:

# non eseguire timesyncd se è installato un altro demone NTP
ConditionFileIsExecutable =! / usr / sbin / ntpd
ConditionFileIsExecutable =! / usr / sbin / openntpd
ConditionFileIsExecutable =! / Usr / sbin / chronyd
ConditionFileIsExecutable =! / Usr / sbin / VBoxService

In altre parole: systemd-timesyncd controlla se qualcuno di questi servizi orari alternativi è in esecuzione sul tuo sistema e, in tal caso, li rimanda gentilmente a fornire i tuoi servizi di cronometraggio.

” forza ” ntpd ad aggiornare dopo lavvio ?!

Questo era lOP “è la domanda. La risposta (nel 2021) non è cambiata: Non dovrebbe “essere necessario farlo su nessun sistema RPi – a meno che qualcuno non abbia cambiato la configurazione predefinita ! Puoi verificarlo come segue:

 $ timedatectl Local time: Wed 2021-01-13 00:25:33 GMT Universal time: Wed 2021-01-13 00:25:33 UTC RTC time: n/a Time zone: Europe/London (GMT, +0000) System clock synchronized: yes NTP service: active RTC in local TZ: no  

Nota due elementi:

  1. System clock synchronized: yes
  2. NTP service: active

Lelemento 1. ti dice che lorologio di sistema è sincronizzato con lorigine dellora predefinita e lelemento 2. è quasi true in quanto RPi utilizza il protocollo SNTP per impostazione predefinita invece di NTP ( REF ); cioè questo significa che RPi ha una sorgente dellora e la sta usando.

Penso che “sia tutto quello che serve per un up-to- risposta alla data per il 2021 , ad eccezione di questa: leggi man timedatectl per ulteriori informazioni sulle sue capacità o se TLDR questa pagina ha un riepilogo decente.

Commenti

  • Orologio di sistema sincronizzato: no
  • @Arrow_Raider: Yer ‘ punto è ???

Risposta

Lora dovrebbe già essere aggiornata. Il server NTPD dovrebbe avviarsi subito dopo il file di scambio e prima di SSHD.

Controlla il tuo file /etc/ntp.conf per assicurarti che sia configurato.

Dovrebbe elencare almeno un server. Uso time.nrc.ca per il mio server.

La pagina del manuale per ntp.conf è qui: http://linux.die.net/man/5/ntp.conf

Risposta

Il Rasberry Pi di mio figlio non aggiornava lora fuori dalla scatola e dopo aver provato tutti i suggerimenti di cui sopra sono riuscito a farlo aggiornare manualmente ma non automaticamente Infine, dopo aver cercato anche altrove senza successo, ho scoperto che ntp.conf fornito con Rasberry Pi aveva le seguenti righe commentate:

#restrict 127.0.0.1 #restrict ::1 

Ho usato

sudo nano /etc/ntp.conf 

nel terminale per modificare il file conf ntp che ora sia:

# Local users may interrogate the ntp server more closely. restrict 127.0.0.1 restrict ::1 

Questo ha risolto il problema per noi. Si aggiorna sia con il WiFi che con il cavo ethernet. Non so se si aggiornerà con WiFi senza la modifica a rc.local suggerita sopra, poiché nel momento in cui ho trovato la soluzione sopra avevo già apportato quella modifica e non lho annullata.

Risposta

Ho trovato lapplicazione timedatectl per aiutarmi quando ho riscontrato un problema simile. installato di default e “–help” fornisce una panoramica abbastanza buona e semplice di come utilizzare lo strumento.

Nota: assicurati che il tuo fuso orario sia impostato correttamente, cosa che può fare anche questo strumento.

Risposta

Non è necessario utilizzare ntp per risolvere il problema. Cè uno script che legge la data da un server e devi solo impostare la data come risultato di quello script (il tuo Raspberry Pi deve essere connesso a Internet). Quindi, devi eseguire quel comando allavvio.

Passaggio 1: Recupera la data da un server.

sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d" " -f5-8)Z" 

Passaggio 2: Esegui il comando allavvio aggiungendolo al file /etc/rc.local (funzionato su Ubuntu 16.04).

sudo gedit /etc/rc.local 

CREDITS:

1- https://askubuntu.com/a/655528/572294

2- https://askubuntu.com/a/1199/572294

Commenti

  • Potrebbe non essere necessario utilizzare ntp ma dovresti. È ‘ migliore, più veloce, più preciso e lo standard del settore. Non ‘ inventare cose strane quando esistono buoni standard per favore.
  • Non ‘ aiuta molto se il tuo RasPi funziona 24 ore su 24, 7 giorni su 7.

Answer

Ho avuto un problema simile con un Pi che non si sincronizzava . Nessuna di queste soluzioni ha funzionato. È venuto fuori che il mio ambiente di rete stava bloccando la porta NTP (123). La soluzione per me era

sudo apt install htpdate 

presa da: https://www.raspberrypi.org/forums/viewtopic.php?t=222236

Che aggiorna invece lorologio di sistema tramite chiamate HTTP.

Answer

Questo è lapproccio che ho finito per prendere. Molte di queste risposte sembravano indicare cose che non sono state verificate quando ho esaminato il mio sistema Raspian:

$ cat /etc/os-release PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)" NAME="Raspbian GNU/Linux" VERSION_ID="9" VERSION="9 (stretch)" ID=raspbian ID_LIKE=debian HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs" 

Non avevo nulla che apparisse nei log indicando che timedatectl stava facendo qualcosa, o che ntp si stava sincronizzando sullo stato attivo della NIC, o che NTPD era persino installato / configurato.

Alla fine ho semplicemente aggiunto questo al mio /etc/rc.local:

$ cat /etc/rc.local logger "Beginning force syncing NTP..." service ntp stop ntpd -gq service ntp start logger "Finished force syncing NTP..." 

e installato ntp:

$ sudo apt-get install ntp 

Il che si traduce in /var/log/syslog:

Aug 5 09:10:20 pi-hole ntp[526]: Starting NTP server: ntpd. Aug 5 09:10:20 pi-hole ntpd[555]: proto: precision = 1.458 usec (-19) Aug 5 09:10:20 pi-hole ntpd[555]: Listen and drop on 0 v6wildcard [::]:123 Aug 5 09:10:20 pi-hole ntpd[555]: Listen and drop on 1 v4wildcard 0.0.0.0:123 Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 2 lo 127.0.0.1:123 Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 3 eth0 192.168.1.85:123 Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 4 lo [::1]:123 Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123 Aug 5 09:10:20 pi-hole ntpd[555]: Listening on routing socket on fd #22 for interface updates Aug 5 09:10:21 pi-hole ntpd[555]: ntpd exiting on signal 15 (Terminated) Aug 5 09:10:21 pi-hole ntp[661]: Stopping NTP server: ntpd. Aug 5 09:10:21 pi-hole ntpd[674]: ntpd [email protected] Sat Mar 10 18:03:33 UTC 2018 (1): Starting Aug 5 09:10:21 pi-hole ntpd[674]: Command line: ntpd -gq Aug 5 09:10:21 pi-hole ntpd[674]: proto: precision = 0.625 usec (-21) Aug 5 09:10:21 pi-hole ntpd[674]: Listen and drop on 0 v6wildcard [::]:123 Aug 5 09:10:21 pi-hole ntpd[674]: Listen and drop on 1 v4wildcard 0.0.0.0:123 Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 2 lo 127.0.0.1:123 Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 3 eth0 192.168.1.85:123 Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 4 lo [::1]:123 Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123 Aug 5 09:10:21 pi-hole ntpd[674]: Listening on routing socket on fd #22 for interface updates Aug 5 09:10:34 pi-hole ntpd[674]: Soliciting pool server 198.98.57.16 Aug 5 09:10:35 pi-hole ntpd[674]: Soliciting pool server 74.82.59.149 Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 23.131.160.7 Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 52.37.26.163 Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 204.2.134.163 Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 96.126.100.203 Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 199.223.248.101 Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 66.228.42.59 Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 208.75.89.4 Aug 5 09:10:37 pi-hole ntpd[674]: Soliciting pool server 204.2.134.164 Aug 5 09:10:37 pi-hole ntpd[674]: Soliciting pool server 104.236.116.147 Aug 5 09:10:38 pi-hole ntpd[674]: Soliciting pool server 204.9.54.119 Aug 5 09:10:48 pi-hole ntpd[674]: ntpd: time set +6.769186 s Aug 5 09:10:49 pi-hole ntpd[853]: ntpd [email protected] Sat Mar 10 18:03:33 UTC 2018 (1): Starting Aug 5 09:10:49 pi-hole ntpd[853]: Command line: /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 111:114 Aug 5 09:10:49 pi-hole ntp[844]: Starting NTP server: ntpd. Aug 5 09:10:49 pi-hole ntpd[856]: proto: precision = 0.625 usec (-21) Aug 5 09:10:49 pi-hole ntpd[856]: Listen and drop on 0 v6wildcard [::]:123 Aug 5 09:10:49 pi-hole ntpd[856]: Listen and drop on 1 v4wildcard 0.0.0.0:123 Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 2 lo 127.0.0.1:123 Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 3 eth0 192.168.1.85:123 Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 4 lo [::1]:123 Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123 Aug 5 09:10:49 pi-hole ntpd[856]: Listening on routing socket on fd #22 for interface updates Aug 5 09:10:49 pi-hole root: Finished force syncing NTP... 

Commenti

  • ‘ t funziona su raspbian minimal: Failed to start ntp.service: Unit ntp.service not found. e ntpd ‘ non esiste neanche. Il Pi alla fine guadagna sicuramente tempo. (Sto ‘ esaminando questo perché i miei ricci HTTPS falliscono senza -k se eseguiti prima)
  • @StevenLu – I ‘ aggiornerò A ‘ er per includere anche linstallazione di ntp.
  • @StevenLu – apt-get install ntp

Risposta

Uso quanto segue sullimmagine predefinita per sincronizzare lora senza installare pacchetti aggiuntivi:

timedatectl set-local-rtc 0 timedatectl set-ntp 1 timedatectl status 

Risposta

Lho trovato da qualche parte su Internet. Sembra funzionare su Buster:

sudo timedatectl set-ntp false && sudo timedatectl set-time "$(date --iso-8601=seconds | cut -d "+" -f1 | tr T " ")" && sudo timedatectl set-ntp true 

Non sono sicuro che il comando intermedio (set-time) sia realmente necessario.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *