Come posso sincronizzare il mio orologio di sistema con Mavericks?


22

Ho un iMac da 27 "a metà 2011 con Mavericks (10.9.1). Ho aggiornato da Mountain Lion quest'autunno quando è stato rilasciato Mavericks. Non ho mai avuto problemi con il mio orologio di sistema.

Da quando ho installato Mavericks il mio orologio guadagna costantemente circa 20 secondi al giorno. Ho impostato correttamente il mio fuso orario e "Imposta data e ora automaticamente" è controllato nelle mie preferenze di sistema Data e ora. È impostato per utilizzare "Apple / Americas / US (time.apple.com)"

Quando apro il pannello Preferenze di Sistema di data e ora, l'orologio viene immediatamente regolato sull'ora corretta, ma senza aprire il riquadro, si avvia abbastanza rapidamente.

Ho riavviato, selezionato e deselezionato la casella per impostare automaticamente la data e l'ora e nessuno dei due sembra aver aiutato.

Qualche soluzione o idea?


AGGIORNARE:

Ho fatto quello che sembra un progresso. Domanda: come posso sapere se il mio mac mantiene aggiornato l'orologio correttamente? e la sua risposta accettata da grgarside ha fornito molto utile aiuto per la risoluzione dei problemi. La mia deriva è di 499.988 (guadagna 43,19 secondi al giorno)!

Ancora più importante, il pacemaker è in esecuzione ogni 5 - 15 secondi, come evidenziato dal mio log di stem, tuttavia, ogni volta che viene eseguito viene visualizzato un errore:

Feb  1 11:53:29 jsw.local pacemaker[19928]: adjtime: Operation not permitted
Feb  1 11:53:39 jsw.local pacemaker[19928]: adjtime: Operation not permitted
Feb  1 11:53:51 jsw.local pacemaker[19928]: adjtime: Operation not permitted
Feb  1 11:53:59 jsw.local pacemaker[19928]: adjtime: Operation not permitted
Feb  1 11:54:09 jsw.local pacemaker[19928]: adjtime: Operation not permitted
Feb  1 11:54:19 jsw.local pacemaker[19928]: adjtime: Operation not permitted

Sembra che ho un problema di autorizzazione, ma non riesco a capirlo. Ho scaricato e ricaricato il pacemaker plsit tramite launchctl

sudo launchctl unload /System/Library/LaunchDaemons/com.apple.pacemaker.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.pacemaker.plist

ecco un'esportazione di testo del mio com.apple.pacemaker.plist

{
    Label = "com.apple.pacemaker";
    ProgramArguments = (
        "/usr/libexec/pacemaker",
        "-b",
        "-e",
        "0.0001",
        "-a",
        10,
    );
    KeepAlive = {
        PathState = {
            "/private/var/db/ntp.drift" = YES;
        };
    };
}

il mio file /private/var/db/ntp.drift è di proprietà di root: wheel e le sue autorizzazioni sono 644, /System/Library/LaunchDaemons/com.apple.pacemaker.plist ha esattamente la stessa proprietà e le stesse autorizzazioni.

Spero che questo aggiornamento fornisca sufficienti informazioni aggiuntive in modo che qualcuno possa farmi superare questo problema.


2
Non ho mai avuto il sistema spento come descritto, ma un'altra persona qui aveva bisogno di selezionare un server orario diverso (asia se al momento usi gli Stati Uniti) e poi tornare indietro per mantenere l'impostazione.
bmike

Immagino che ci sia qualcosa di sbagliato nel tuo DNS o nel tuo file host. Hai modificato le impostazioni e le preferenze della tua rete in qualche modo? Non solo sotto 10,9 ma 10,8? Vorrei provare a passare da time.apple.com a uno degli URL di pool.ntp.org/en .
Andrew U.,

1
@AndrewU. Il tuo commento non tiene conto del fatto che il tempo apparentemente si sincronizza correttamente quando apro il riquadro pref
Scott

1
@bmike Ci sto provando, ma non sono tornato a quell'iMac per dare un'occhiata. Grazie, Scott
Scott

1
Sto riscontrando lo stesso identico problema: l'orologio si sposta di pochi minuti alla settimana, ma si sincronizza immediatamente correttamente quando apro il pannello delle preferenze dell'orologio. Ho notato che l'errore "adjtime: operazione non consentita" può essere eliminato se si esegue pacemaker dalla riga di comando tramite sudo: sudo / usr / libexec / pacemaker -v Ma questa non è davvero una soluzione, forse solo un suggerimento su cosa potrebbe succedere sbagliato dietro le quinte.
Brian Stormont,

Risposte:


22

questi sembrano funzionare bene sul mio iMac, con Mountain Lion in esecuzione:

0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org time.apple.com

è sufficiente copiare / incollare la riga separata dallo spazio sopra nel campo "Imposta data e ora automaticamente", nelle preferenze Data e ora. ricordati di premere Invio dopo aver digitato i nomi dei server ntp, in modo che ntp.conf venga aggiornato.


Non capisco perché abbia funzionato, ma ha funzionato!
Scott,

In Yosemite questo è diventato un menu a discesa che non sembra essere modificato (anche se in qualche modo sembra che tu possa modificarlo ...) :(
RedYeti,

Puoi ancora modificare in Yosemite (l'ho appena fatto!). Se selezioni il menu a discesa e premi il tasto Elimina, vedrai che il testo scompare. Non puoi usare cmd + v per incollare, ma il clic secondario ti dà un'opzione incolla nel menu.
Ryan Dlugosz,

3

Il ntpd di Maverisks è rotto, distrutto, corrotto. Apple lo sa: ho passato ore al telefono con loro, fornendo loro campioni e file in abbondanza. Potrebbe essere un riporto da iOS ("Back to the Mac" indipendentemente dal fatto che funzioni effettivamente). Il colpevole sembra essere un nuovo con il demone Maverisks chiamato "pacemaker", che nella classica moda Apple è sotto documentato e non sembra comportarsi in conformità con la poca documentazione che esiste.


C'è una discussione su questo lento processo qui: discussions.apple.com/thread/5604114
shrx

Dai un'occhiata a ChronyControl di Bryan Christianson (anche Bryan è dietro WhatRoute). Riporta un po 'di sanità mentale al cronometraggio ntp usando Mojave v10.14.4.
esterno

2

Prima di effettuare una nuova installazione, ti consiglio vivamente di provare a ripristinare la tua NVRAM (RAM non volatile).

Una NVRAM (o PRAM su Mac basati su PowerPC precedenti) memorizza alcune impostazioni. È un tipo di memoria come la normale RAM del tuo Mac, ma con una grande differenza è che una NVRAM memorizza ciò che è presente anche se il tuo Mac viene spento.

In particolare, le informazioni archiviate in NVRAM / PRAM includono:

  • Volume dell'altoparlante
  • Impostazioni del fuso orario
  • Risoluzione dello schermo
  • Selezione del disco di avvio
  • Panico recente del kernel, se presente

Probabilmente, ciò che è memorizzato sulla tua NVRAM sul tuo tempo è stato corrotto in qualche modo e ora causa il tuo problema.

Ora, potresti chiedere, per quanto riguarda la sincronizzazione del tempo con i server? Di cosa ho bisogno? Bene, è solo per impostare il tuo tempo invece di farlo manualmente. Solo un piccolo gesto; niente di più. Dopo che è stato impostato, viene archiviato sulla NVRAM come al solito.

E il tuo tempo viene corretto ogni volta che apri le tue preferenze di data e ora perché probabilmente aprendolo lì si avvia una sincronizzazione manuale del tuo orario con il server. Ma dopo ciò le cose vanno di nuovo in tilt.

Ad ogni modo, per ripristinare la tua NVRAM:

  • Spegni il Mac.
  • Individuare i seguenti tasti sulla tastiera: Comando (⌘) , Opzione , P e R . Sarà necessario tenere premuti contemporaneamente questi tasti al punto 4.
  • Accendi il computer.
  • Tieni premuti i tasti Comando-Opzione-PR prima che appaia la schermata grigia.
  • Tieni premuti i tasti finché il computer non si riavvia e senti il ​​suono di avvio per la seconda volta.
  • Rilascia i tasti.

Fonte: Apple


1
Ho potuto vedere il ripristino della NVRAM cancellare un fuso orario errato, ma per quanto riguarda il cronometraggio e la capacità di ntpd di impedire all'orologio di divergere dalle fonti di Internet - ci sono molti collegamenti mancanti tra ciò che è archiviato in NVRAM e come viene impostato il tempo. Soprattutto perché il sistema si spegne e si corregge automaticamente durante l'esecuzione aprendo il riquadro delle preferenze di sistema. Stai pensando che si sta incasinando all'avvio, forse?
bmike

2

È possibile ntpdatetramite launchd.

Ho messo insieme i pezzi su https://github.com/tjluoma/ntp-fix-time ma includerò i bit rilevanti qui:

  1. Un launchdplist che va in / Library / LaunchDaemons / (perché deve essere eseguito come rootquando viene eseguito)

  2. Uno script shell che chiama ntpdate -u $NTPHOSTe registra il suo output.

Per qualche motivo, provare a chiamare ntpdatedirettamente tramite launchdnon ha funzionato per me, ma chiamarlo tramite uno script sembra funzionare.

Lo plistusa questo:

    <key>RunAtLoad</key>
    <true/>

per assicurarsi che venga eseguito al riavvio del Mac.

Questo:

    <key>StartInterval</key>
    <integer>14400</integer>

si assicura che funzioni ogni 4 ore, il che sembrava "abbastanza spesso".

Lo script utilizzerà i server elencati in /etc/ntp.conf a meno che non ce ne siano, nel qual caso utilizzerà time.apple.com.

(La manpagina per ntpdatesuggerisce che alla fine sarà "ritirato" da Mac OS X ma è ancora lì in 10.9.1, quindi è abbastanza per me.)


Sembra che funzionerà, anche se sono perplesso sul perché sia ​​necessario e se ci sono altri problemi di sistema di cui non sono a conoscenza.
Scott,

1
Cordiali saluti - Non sono un fan di fare affidamento sulla variabile PATH in LaunchDaemons o cron. Sono stato bruciato troppe volte, penso che sia una pratica molto migliore usare il percorso completo. Nel caso di LaunchDaemons è possibile specificare una WorkingDirectory che, se utilizzata, elimina la necessità di specificare il percorso completo.
Scott,

1

Finora non ho avuto successo nell'eliminare la deriva dell'orologio. Perché il mio orologio si sposta lentamente (meno di un minuto al giorno) Ci vuole un po 'per vedere se la soluzione tentata funziona.

Ho appena provato una variante della risposta di Patrix da questo post . L'eco non ha funzionato sulla riga di comando, ho ottenuto "permesso negato" (la sua risposta si riferiva a un'installazione Lion). Ma ho rimosso il vecchio file e sostituito con uno nuovo che ho modificato con nano.

sudo rm /etc/ntp.conf
sudo touch /etc/ntp.conf
sudo nano /etc/ntp.conf

nel file che ho semplicemente inserito

server time.apple.com

nessun trascinamento. o nuova linea. Sono quindi uscito da nano (ctrl-X) e ho risposto sì a salvare le modifiche.

Non avevo bisogno di cambiare proprietario poiché era già di proprietà di root: wheel.

Aggiornerò quando so se ha funzionato.


1
Questo non ha funzionato
Scott

2
Perché lo tocchi prima di modificarlo?
Max Ried,

0

Volevo fornire i miei due centesimi su questo problema. Ho avuto un problema simile. Il mio orologio sarebbe un'ora indietro e ciò che ha funzionato per me è stato deselezionare automaticamente il fuso orario impostato utilizzando la posizione corrente e semplicemente scegliendo manualmente la città più vicina. Non fa male provarlo e vedere se fa la differenza.


0

Come è stato discusso altrove, la deriva dell'orologio è dovuta al fatto che ntpd non funziona e che qualcosa chiamato / usr / libexec / pacemaker non funziona correttamente. La disabilitazione del pacemaker e l'esecuzione di ntpdate per la rotazione dell'orologio ha reso l'orologio ragionevolmente stabile sul mio sistema, con modifiche minime al sistema.

Dal terminale, eseguire questi comandi in ordine.

cd /System/Library/LaunchDaemons/
mv com.apple.pacemaker.plist com.apple.pacemaker.plist.OFF
sudo crontab -l > /tmp/foo
echo '*/5 * * * * /usr/sbin/ntpdate -s -B -u time.apple.com' >> /tmp/foo
sudo crontab /tmp/foo

Quindi riavviare il sistema.

I primi due comandi disabilitano il pacemaker spostando il suo file di configurazione di avvio. Gli ultimi tre comandi indicano al demone cron di sistema di eseguire ntpdate ogni cinque minuti, rallentando o accelerando l'orologio secondo necessità e registrando ciò che fa su /var/log/system.log.


-2

Se chiami Apple, ti suggeriranno di eseguire una reinstallazione preservando il sistema operativo.

Suppongo che tu abbia una preferenza corrotta. Puoi provare a modificare ogni impostazione nel pannello delle preferenze Data e ora su qualcos'altro, riavviare, quindi impostarlo come desideri. Se il problema persiste, accedi alla directory Preferenze e rimuovi qualsiasi elenco delle preferenze che ha a che fare con la data e l'ora delle preferenze.


Reinstallare? Orrore! Ecco perché ho lasciato Windows anni fa. Certamente le persone intelligenti e ragionevoli possono trovare una soluzione migliore della reinstallazione di un sistema operativo.
Scott,

E per quanto riguarda Andare direttamente alle Preferenze e rimuovere i piani relativi alla data e all'ora. Trovo tale raccomandazione incompleta e pericolosa. Se questo è seriamente il tuo consiglio dovresti A) fornire la posizione della cartella. E B) consiglia all'utente di spostare i file altrove (forse desktop) invece di eliminarli. Molte persone, di vari livelli di esperienza, leggeranno questa domanda.
Scott,

Mi rendo conto che ultimamente non hai chiamato il supporto tecnico Apple. La reinstallazione di OSX è un'operazione abbastanza indolore. Tutte le tue app rimangono installate, tutti i tuoi utenti rimangono presenti.
vy32,

Chiamato Apple ieri. 3 ore al telefono. Quindi una reinstallazione di 4 ore del sistema operativo (tramite Internet veloce su un SSD). Quindi 2 ore modificando i file di configurazione (apache, ecc.) Che sono stati bloccati dalla reinstallazione del sistema operativo. E dopo tutto questo - I MIEI OROLOGI ANCORA DEL MIO OROLOGIO. Nemmeno vicino a indolore e il problema non è stato risolto.
Scott,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.