Casa / Internet / Windows 10 e tempo di Ubuntu. Come Ubuntu e Windows non hanno condiviso il tempo. Configurazione di Linux per l'esecuzione dell'ora locale

Windows 10 e tempo di Ubuntu. Come Ubuntu e Windows non hanno condiviso il tempo. Configurazione di Linux per l'esecuzione dell'ora locale

Molti nuovi utenti che sono appena passati a Linux dal sistema operativo Windows, e mentre di tanto in tanto eseguono ancora questo sistema, devono affrontare il problema che dopo scarica windows in ubuntu il tempo si perde qualche ora fa o in avanti, quindi dopo diversi riavvii è già difficile capire che ora sia. Tutto ciò è dovuto alle differenze nel formato di memorizzazione del tempo in questi sistemi operativi Oh. E accadrà ad ogni riavvio, non importa quanto tu abbia impostato l'ora corretta. Ma questo problema può essere risolto. E anche in diversi modi. In questo articolo, vedremo come risolvere il problema di perdere tempo in Ubuntu e Windows.

CONFIGURAZIONE DI WINDOWS PER LAVORARE IN UTC

Quindi, se il tempo di Windows e Linux si perde quando si passa da un sistema operativo all'altro, il modo migliore farà funzionare Windows in un formato più corretto e logico. Tutto quello che devi fare è aggiungere una chiave di registro. Puoi farlo con un singolo comando della console. Per aprire la console in Windows 10, sposta il mouse nell'angolo in basso a sinistra, quindi fai clic con il pulsante destro del mouse. A menù contestuale Selezionare Prompt dei comandi (amministratore):

> Reg aggiungi HKLM\SYSTEM\CurrentControlSet\Control\Ti meZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

E per quelli a 64 bit, devi usare il tipo di valore REG_QWORD:

> Reg aggiungi HKLM\SYSTEM\CurrentControlSet\Control\Ti meZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1

Target="_blank">https://losst.ru/wp-content/uploads/2016/10/utc-windows-600x139-300x70.png 300w" width="600" />

Quasi pronto, ma indipendentemente da questa impostazione, il servizio ora di Windows scriverà l'ora in formato locale durante l'aggiornamento tramite Internet, quindi è conveniente disabilitare questo servizio. Per fare ciò, esegui:

> sc config w32time start= disabilitato

COME TORNARE INDIETRO?

Se vuoi restituire tutto com'era, puoi farlo facilmente come sgusciare le pere. Innanzitutto, riportiamo la chiave di registro nella posizione corretta:

> Reg aggiungi HKLM\SYSTEM\CurrentControlSet\Control\Ti meZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 0

E riavviamo il servizio di sincronizzazione:

> sc config w32time start=demand

IMPOSTAZIONE DI LINUX PER LAVORARE IN ORA LOCALE

Per impostazione predefinita, Linux utilizza il formato dell'ora UTC, ma se Ubuntu 16.04 incasina l'ora di Windows, puoi facilmente forzare il sistema a memorizzare l'ora locale in un timer hardware. In tutte le distribuzioni che utilizzano Systemd, incluso Ubuntu 16.04, tutto ciò che devi fare è eseguire il comando:

sudo timedatectl set-local-rtc 1 --adjust-system-clock

Per visualizzare lo stato corrente degli orologi hardware e software, eseguire:

sudo timedatectl

Target="_blank">https://losst.ru/wp-content/uploads/2016/10/rtc-localtime-600x242-300x121.jpg 300w" width="600" />

Fatto, ora puoi riavviare il computer e avviare Windows per assicurarti che il tempo non vada perso al riavvio. Sui vecchi sistemi Ubuntu, è necessario modificare il file /etc/default/rcS e sostituire UTC=yes con UTC=no. Puoi farlo con il comando:

Sudo sed -i "s/UTC=yes/UTC=no/" /etc/default/rcS

COME TORNARE INDIETRO?

Ancora una volta, restituisci tutto come era possibile con un solo comando:

sudo timedatectl set-local-rtc 0

E sulle vecchie distribuzioni Ubuntu:

Sudo sed -i "s/UTC=no/UTC=yes/" /etc/default/rcS

CONCLUSIONI

È tutto. Ora se ti imbatti problema di Windows 10 - Ubuntu o qualsiasi altro tempo si perde Distribuzione Linux, saprai già come risolverlo utilizzando due metodi completamente funzionanti.

Molti nuovi utenti che sono appena passati a Linux dal sistema operativo Windows, e mentre di tanto in tanto eseguono ancora questo sistema, devono affrontare il problema che dopo aver caricato Windows in Ubuntu, il tempo torna indietro di alcune ore o avanti, quindi dopo diversi riavvii è già difficile capire che ore siano.

Tutto ciò è dovuto alle differenze nel formato di archiviazione dell'ora in questi sistemi operativi. E accadrà ad ogni riavvio, non importa quanto tu abbia impostato l'ora corretta. Ma questo problema può essere risolto. E anche in diversi modi. In questo articolo, vedremo come risolvere il problema di perdere tempo in Ubuntu e Windows.

Come ho detto, il problema è in diversi formati per la memorizzazione e il ripristino del tempo. Il computer ha due tipi di orologi. Hardware: va sempre acceso, anche quando il computer è spento e l'orologio del software è integrato nel kernel. Quando il computer viene acceso, il valore dell'orologio hardware viene scritto nel software e successivamente il sistema operativo prende il tempo da lì. Ma Windows e Linux funzionano in modo diverso con questi due orologi. Ci sono due modi di lavorare:

  • UTC- sia gli orologi hardware che quelli software sono nell'ora di Greenwich. Cioè, l'orologio fornisce l'ora universale nel fuso orario zero. Ad esempio, se hai un fuso orario GMT + 3, Kiev, l'orologio sarà indietro di tre ore. E già gli utenti aggiungono localmente una correzione del fuso orario a questo orario, ad esempio, più +3. Ogni utente aggiunge la correzione di cui ha bisogno. Questo viene fatto sui server in modo che ogni utente possa ottenere l'ora corretta per il proprio fuso orario.
  • ora locale- in questa opzione, l'orologio del software funziona anche nell'ora di Greenwich, ma l'orologio dell'hardware funziona nel fuso orario locale. Per l'utente non c'è differenza, è comunque necessario aggiungere una modifica al proprio fuso orario. Ma quando si avvia e si sincronizza l'ora, Windows sottrae 3 ore (o qualche altra correzione del fuso orario) dall'ora dell'hardware per assicurarsi che l'ora del software sia corretta.

Allora perché Ubuntu e Windows sono scaduti? Qui, diciamo, Windows è in esecuzione e nel tempo va tutto bene lì, viene salvato in formato ora locale. Ma quando si riavvia in Linux, il sistema operativo prende Localtime e pensa che sia UTC. Pertanto, l'utente prenderà l'ora già corretta e vi aggiungerà una correzione del fuso orario. Pertanto, il tempo sarà già sbagliato.

Successivamente, hai corretto l'ora e ora l'orologio hardware funziona in UTC. Ma poi carica Windows. Il sistema pensa che questo sia Localtime e, per impostare l'ora software corretta, aggiunge una correzione del fuso orario all'hardware, ad esempio, nel nostro caso +3. Quindi ogni utente applica nuovamente questa correzione e l'ora è già stata ripristinata, di nuovo.

L'unico modo sicuro per risolvere questo problema è far funzionare entrambi i sistemi nello stesso formato, e questo non è affatto difficile da fare. E puoi andare in due modi: far funzionare Windows in UTC o Linux in formato Localtime, che non è del tutto corretto, ma del tutto possibile. Passiamo quindi alla soluzione del problema di perdere tempo in Ubuntu.

Configurazione di Windows per funzionare in UTC

Quindi, se hai tempo Windows e Linux che si perde quando si passa da un sistema operativo all'altro, il modo migliore è far funzionare Windows in un formato più corretto e logico. Tutto quello che devi fare è aggiungere una chiave di registro. Puoi farlo con un singolo comando della console. Per aprire la console in Windows 10, sposta il mouse nell'angolo in basso a sinistra, quindi fai clic con il pulsante destro del mouse. Dal menu contestuale, seleziona Prompt dei comandi (amministratore):

> Reg aggiungi HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

E per quelli a 64 bit, devi usare il tipo di valore REG_QWORD:

> Reg aggiungi HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1

Quasi pronto, ma indipendentemente da questa impostazione, il servizio ora di Windows scriverà l'ora in formato locale durante l'aggiornamento tramite Internet, quindi è conveniente disabilitare questo servizio. Per fare ciò, esegui:

> sc config w32time start= disabilitato

Come tornare indietro?

Se vuoi restituire tutto com'era, puoi farlo facilmente come sgusciare le pere. Innanzitutto, riportiamo la chiave di registro nella posizione corretta:

> Reg aggiungi HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 0

E riavviamo il servizio di sincronizzazione:

> sc config w32time start=demand

Configurazione di Linux per l'esecuzione dell'ora locale

Per impostazione predefinita, Linux utilizza il formato dell'ora UTC, ma se Ubuntu 16.04 incasina l'ora di Windows, puoi facilmente forzare il sistema a memorizzare l'ora locale in un timer hardware. In tutte le distribuzioni che utilizzano Systemd, incluso Ubuntu 16.04, tutto ciò che devi fare è eseguire il comando:

sudo timedatectl set-local-rtc 1 --adjust-system-clock

Per visualizzare lo stato corrente degli orologi hardware e software, eseguire:

sudo timedatectl

Fatto, ora puoi riavviare il computer e avviare Windows per assicurarti che il tempo non vada perso al riavvio. Sui vecchi sistemi Ubuntu, è necessario modificare il file /etc/default/rcS e sostituire UTC=yes con UTC=no. Puoi farlo con il comando:

sudo sed -i "s/UTC=yes/UTC=no/" /etc/default/rcS

Come tornare indietro?

Ancora una volta, restituisci tutto come era possibile con un solo comando:

sudo timedatectl set-local-rtc 0

E sulle vecchie distribuzioni Ubuntu:

sudo sed -i "s/UTC=no/UTC=yes/" /etc/default/rcS

conclusioni

È tutto. Ora, se incontri il problema di Windows 10 - Ubuntu o qualsiasi altra distribuzione Linux perde tempo, saprai già come risolverlo utilizzando due metodi completamente funzionanti. Se avete domande, chiedete nei commenti!
Abbiamo capito come impostare l'ora corretta in Ubuntu e Windows in modo che i fusi orari non vadano fuori strada, ma quali sono i fusi orari e perché sono necessari, per completare il video a riguardo:

L'utilizzo di più sistemi operativi sullo stesso computer a volte provoca conflitti tra loro quando utilizzano la stessa cosa. A volte si tratta di qualcosa di semplice come il tempo. Anche i sistemi operativi per PC così popolari come Windows e Ubuntu non possono andare d'accordo e cambiare costantemente l'orario dell'altro in modo errato.

Le ragioni di questo fenomeno sono in realtà semplici: Windows tratta l'ora di sistema (che viene visualizzata nelle impostazioni CMOS) come locale (tenendo conto del fuso orario) e Ubuntu - secondo UTC (Greenwich Mean Time, senza considerare il fuso orario ). Per questo motivo, correggono l'ora del sistema per la loro logica, violando la logica dell'altro.

Anche la soluzione al problema è semplice: forzare Windows ad aggiungere un offset di fuso orario all'ora di sistema o impedire a Ubuntu di aggiungere questo offset.

Impostazioni in Ubuntu

A partire dalla versione 16.04, le impostazioni di visualizzazione dell'ora possono essere modificate con due comandi.

Abilitazione della visualizzazione dell'ora locale:
sudo hwclock --localtime --adjust

Abilitazione della visualizzazione UTC:
sudo hwclock --utc --adjust

Le versioni precedenti di Ubuntu devono modificare il file rtC:

sudo nano /etc/default/rcS

In esso è necessario aggiungere (per visualizzare l'ora locale) o rimuovere questa riga (per visualizzare l'ora UTC):

Impostazioni in Windows

Quasi tutto su Windows Impostazioni di sistema vengono modificati nel registro, le informazioni sul fuso orario richieste in questa situazione non fanno eccezione. Si trova in anagrafe a questo indirizzo:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

Qui è necessario aggiungere o modificare il parametro RealTimeIsUniversal. Il suo tipo è DWORD. Affinché l'ora di sistema possa essere letta in UTC, è necessario impostare il valore su 1, per riconoscerlo come locale, è necessario impostare il valore su 0 o rimuovere del tutto questo parametro.

L'editor del registro può essere avviato con il comando regedit.

In questo articolo, ho parlato delle cause e delle loro soluzioni se la data e l'ora sul tuo computer si perdono. Questo articolo ha affrontato problemi comuni indipendentemente dal numero di sistemi operativi installati sul laptop e sull'unità di sistema.

Oggi parleremo del problema se l'ora si smarrisce, ovvero l'orologio, per diverse ore, come se il fuso orario stesse cambiando. Questo problema è sorto per me dopo aver iniziato a utilizzare contemporaneamente due sistemi operativi Linux e Windows sul mio PC.

Questo problema non è così nuovo. Per risolvere questo problema, molti problemi sono stati scritti su Internet.

Il nocciolo del problema è se si perde tempo.

Ci sono due sistemi operativi sul PC, vale a dire Linux e Windows.

Avvio Linux - il tempo è normale.

Ho lavorato e riavviato su Windows: l'ora mostra qualche ora prima (o dopo, non ricordo esattamente).

Ho impostato l'ora, impostato la sincronizzazione automatica con Internet o niente è servito. Il problema non è risolto in modo semplice. Ho cercato su Internet e si scopre che il problema è che il computer ha due tipi di orologi, hardware e software.

Orologio hardware: funziona sempre, anche quando il computer è spento, c'è una batteria aggiuntiva, una batteria sulla scheda. Supporta il passare del tempo e salva le impostazioni.

Tempo programma, viene scritto nel programma quando viene acceso e quindi prelevato da lì.

Windows e Linux funzionano in modo diverso con questo orologio, da qui l'errore nel tempo durante il riavvio da un sistema operativo all'altro.

Qui. cosa c'è scritto a riguardo su altri siti a riguardo:

Come risolvere questo problema?

Fai in modo che Windows e Linux funzionino allo stesso modo con questo orologio hardware.

Su Internet, sull'argomento "il tempo si smarrisce", è scritto che giusta decisione farà funzionare correttamente le finestre. Linux - funziona correttamente, secondo molte opinioni di molti.

Quindi devi far funzionare Windows nel tempo come Linux.

Il processo di risoluzione del problema.

Devi aggiungere una chiave al registro del tuo sistema operativo Windows.

Ci sono modi per aggiungere questa chiave con un comando, con riga di comando. Faremo tutto a mano in ordine. E sarà chiaro a noi stessi quello che abbiamo fatto, e il cervello lavorerà un po'.

Chiama la finestra esegui con una scorciatoia da tastiera +R. Oppure seleziona Esegui dal menu.

Digita regedit e fai clic su OK.

Si aprirà l'editor del registro.

Vai al ramo del registro lungo il percorso HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

Lì, nella metà sinistra dell'editor, fai clic con il pulsante destro del mouse e fai clic su Crea parametro

Per sistemi DWORD x32 bit

Per sistemi QWORD x64 bit

Gli diamo il nome RealTimeIsUniversal

In modalità UEFI ( avvio sicuro). L'ora del mio BIOS è corretta.

Quando avvio in Ubuntu e quindi avvio in Windows 10, mostra l'ora sbagliata. Devo risolverlo manualmente o online in Windows 10 e quando riavvio in Windows 10 non è un problema. L'orologio mostra l'ora corretta. E poi quando riavvio in Linux, l'orologio è corretto, ma tornando a Windows 10, l'orologio ricomincia a funzionare.

I sistemi operativi memorizzano e recuperano l'ora in un orologio hardware che si trova sul tuo scheda madre per tenere traccia del tempo anche quando il sistema non è alimentato. La maggior parte dei sistemi operativi (Linux/Unix/Mac) memorizza l'ora sull'orologio hardware come UTC per impostazione predefinita, sebbene alcuni sistemi (in particolare Microsoft Windows) memorizza l'ora sull'orologio hardware come ora "locale". Ciò causa problemi in un sistema a doppio avvio se entrambi i sistemi trattano l'orologio hardware in modo diverso.

Il vantaggio dell'utilizzo dell'orologio hardware come UTC è che non è necessario modificare l'orologio hardware quando ci si sposta tra i fusi orari o quando inizia o finisce l'ora legale (DST), perché UTC non ha orari o scostamenti di orario.

Modificare Linux per utilizzare l'ora locale è più semplice e affidabile di Sostituzione di Windows per utilizzare UTC, quindi i sistemi Linux/Windows con dual boot di solito usano l'ora locale.

Da Intrepid (8.10), UTC=yes è l'impostazione predefinita.

Fai in modo che Windows usi UTC

Nota. Questo metodo non era originariamente supportato in Windows Vista e Server 2008 ma restituito con Vista SP2, Windows 7, Server 2008 R2 e Windows 8/8.1.

Per MS Windows per calcolare l'ora dall'orologio hardware in formato UTC.

Crea un file denominato WindowsTimeFixUTC.reg con il seguente contenuto, quindi fai doppio clic su di esso per unire il contenuto al registro:

Editor del registro di Windows versione 5.00 "RealTimeIsUniversal"=dword:00000001

Nota. Il servizio Ora di Windows scriverà comunque l'ora locale su RTC indipendentemente dall'impostazione del Registro di sistema sopra quando è disattivato, quindi è conveniente disabilitare il servizio Ora di Windows con questo comando (se è richiesta la sincronizzazione dell'ora mentre Windows utilizza una sincronizzazione dell'ora di terze parti):

Sc config w32time start= disabilitato

Annulla modifica

È possibile creare un file con il seguente contenuto e quindi fare doppio clic su di esso per unirlo modifiche iniziali, come menzionato sopra:

Editor del registro di Windows versione 5.00 "RealTimeIsUniversal"=-

Se il servizio Ora di Windows è stato disabilitato, abilitarlo nuovamente con il comando:

Sc config w32time start=demand

Rendi l'ora "locale" di Linux

Per dire al tuo sistema Ubuntu che l'orologio hardware è impostato sull'ora "locale":

  1. cambia /etc/default/rcS
  2. aggiungere o modificare la sezione seguente

    # Imposta UTC=yes se l'orologio hardware è impostato su UTC (GMT) UTC=no

Sistemi Ubuntu 15.04 e superiori (ad es. Ubuntu 16.04 LTS):

    apri un terminale ed esegui il comando seguente