GNU/Linux >> Linux Esercitazione >  >> Linux

Visualizzazione dell'ora errata nella configurazione del doppio avvio di Windows-Linux? Ecco come risolverlo

Se esegui il dual boot di Windows e Ubuntu o di qualsiasi altra distribuzione Linux, potresti aver notato una differenza di tempo tra i due sistemi operativi.

Quando usi Linux, mostra l'ora corretta. Ma quando avvii Windows, mostra l'ora sbagliata. A volte è il contrario e Linux mostra l'ora sbagliata e Windows ha l'ora corretta.

È strano soprattutto perché sei connesso a Internet e la tua data e ora sono impostate per essere utilizzate automaticamente.

Non preoccuparti! Non sei l'unico ad affrontare questo problema. Puoi risolverlo usando il seguente comando nel terminale Linux:

timedatectl set-local-rtc 1

Ancora una volta, non preoccuparti. Spiegherò in dettaglio come il comando precedente risolve il problema dell'ora sbagliata in Windows dopo il dual boot. Ma prima, lascia che ti spieghi perché riscontri una differenza di fuso orario in una configurazione dual boot.

Perché Windows e Linux mostrano tempi diversi in dual boot?

Un computer ha due orologi principali:un orologio di sistema e un orologio hardware.

Un orologio hardware chiamato anche RTC (orologio in tempo reale) o orologio CMOS/BIOS. Questo orologio è esterno al sistema operativo, sulla scheda madre del tuo computer. Continua a funzionare anche dopo lo spegnimento del sistema.

L'orologio di sistema è ciò che vedi all'interno del tuo sistema operativo.

Quando il computer è acceso, l'orologio hardware viene letto e utilizzato per impostare l'orologio di sistema. Successivamente, l'orologio di sistema viene utilizzato per il rilevamento del tempo. Se il tuo sistema operativo apporta modifiche all'orologio di sistema, come cambiare il fuso orario, ecc., prova a sincronizzare queste informazioni con l'orologio hardware.

Per impostazione predefinita, Linux presuppone che l'ora memorizzata nell'orologio hardware sia in UTC, non nell'ora locale. D'altra parte, Windows ritiene che l'ora memorizzata sull'orologio hardware sia l'ora locale. È qui che iniziano i problemi.

Mi spiego con esempi.

Vedete, sono nel fuso orario di Calcutta, che è UTC+5:30. Dopo l'installazione, quando ho impostato il fuso orario in Ubuntu sul fuso orario di Calcutta, Ubuntu sincronizza queste informazioni sull'ora con l'orologio hardware ma con un offset di 5:30 perché l'orologio hardware (RTC) deve essere in UTC per Linux.

Diciamo che l'ora corrente nel fuso orario di Calcutta è 15:00, il che significa che l'ora UTC è 09:30.

Ora, quando spengo il sistema e avvio Windows, l'orologio hardware ha l'ora UTC (09:30 in questo esempio). Ma Windows pensa che l'orologio hardware abbia memorizzato l'ora locale. E quindi cambia l'orologio di sistema (che avrebbe dovuto mostrare le 15:00) per utilizzare l'ora UTC (09:30) come ora locale. E quindi, Windows mostra 09:30 come l'ora che è 5:30 ore indietro rispetto all'ora effettiva (15:00 in questo esempio).

Ancora una volta, se imposto l'ora corretta in Windows attivando i pulsanti del fuso orario e dell'ora automatici, sai cosa accadrà? Ora mostrerà l'ora corretta sul sistema (15:00) e sincronizzerà queste informazioni (notare l'opzione "Sincronizza l'orologio" nell'immagine) con l'orologio hardware.

Se si avvia Linux, legge l'ora dall'orologio hardware che è nell'ora locale (15:00), ma poiché Linux crede che sia l'ora UTC, aggiunge un offset di 5:30 all'orologio di sistema. Ora Linux mostra un'ora di 20:30 che è 5:30 ore avanti rispetto all'ora effettiva.

Ora che hai compreso la causa principale dei problemi relativi alla differenza di orario nel dual boot, è il momento di vedere come risolvere il problema.

Risolto il problema con Windows che mostrava l'ora sbagliata in una configurazione di avvio doppio con Linux

Esistono tre modi per gestire questo problema:

  1. Fai in modo che sia Ubuntu che Windows controlli automaticamente data, ora e fuso orario tramite Internet
  2. Fai in modo che Linux utilizzi l'ora locale per l'orologio hardware
  3. Fai in modo che Windows utilizzi l'ora UTC per l'orologio hardware

Ne discuterò due che sono più facili.

Metodo 1:fai in modo che il tuo sistema operativo imposti automaticamente ora e data

Quello che succede in questo caso è che sebbene il tuo sistema operativo (sia esso Windows o Linux) mostrerà l'ora sbagliata per un minuto, quindi imposta automaticamente l'ora corretta se sei connesso a Internet.

Per fare in modo che il tuo sistema Ubuntu Linux controlli automaticamente la data e l'ora, vai su Impostazioni di sistema -> Data e ora e abilita entrambe le opzioni.

Dovresti fare una modifica delle impostazioni simile anche per Windows.

Metodo 2:fai in modo che Ubuntu utilizzi l'ora locale per l'orologio hardware

È più facile apportare le modifiche in Linux e quindi ti consiglio di utilizzare il secondo metodo.

Ubuntu e la maggior parte delle altre distribuzioni Linux usano systemd in questi giorni e quindi puoi usare il comando timedatectl per modificare le impostazioni.

Quello che stai facendo è dire al tuo sistema Linux di utilizzare l'ora locale per l'orologio hardware (RTC). Lo fai con il set-local-rtc (imposta l'ora locale per RTC) opzione:

timedatectl set-local-rtc 1

Come puoi notare nell'immagine qui sotto, l'RTC ora utilizza l'ora locale.

Ora, se avvii Windows, l'orologio hardware deve essere l'ora locale, che questa volta è effettivamente corretta. Quando avvii Linux, il tuo sistema Linux sa che l'orologio hardware utilizza l'ora locale, non UTC. E quindi, questa volta non tenta di aggiungere l'offset.

Questo risolve il problema della differenza di orario tra Linux e Windows in dual boot.

Viene visualizzato un avviso sul mancato utilizzo dell'ora locale per RTC. Per le configurazioni desktop, non dovrebbe causare alcun problema. Almeno, non me ne viene in mente uno.

Spero di averti chiarito le cose. Se hai ancora domande, lascia un commento qui sotto.



Linux
  1. Correggi il tempo errato in Windows 11 che esegue il dual boot con Ubuntu Linux

  2. Come eseguire il dual boot di Windows 10 e MX Linux

  3. Come passare un valore a un modulo del kernel Linux integrato all'avvio?

  4. Come configurare il dual boot NixOS con Mac OS X su un (U) EFI MacBook?

  5. In che modo Linux utilizza un orologio in tempo reale?

L'arresto richiede troppo tempo? Ecco come indagare e correggere lunghi tempi di spegnimento in Linux

Fai in modo che il comando non sia stato trovato? Ecco come risolverlo

Lo scorrimento con tre dita non funziona in GNOME 40? Ecco come risolverlo

Come installare Linux su Macintosh e dual boot con macOS

Come controllare la cronologia di riavvio del sistema e il tempo di avvio in Linux

Fedora - Come partizionare correttamente un SSD per una configurazione a doppio avvio?