Homepage » come » Come risolvere Windows e Linux che mostrano tempi diversi durante il doppio avvio

    Come risolvere Windows e Linux che mostrano tempi diversi durante il doppio avvio

    Il tuo computer memorizza l'ora in un orologio hardware sulla sua scheda madre. L'orologio tiene traccia del tempo, anche quando il computer è spento. Per impostazione predefinita, Windows presuppone che l'ora sia archiviata nell'ora locale, mentre Linux presuppone che l'ora sia archiviata nell'ora UTC e applichi un offset. Ciò porta a uno dei sistemi operativi che mostra il momento sbagliato in una situazione di avvio doppio.

    Per risolvere questo problema, hai due opzioni: fai in modo che Linux usi l'ora locale o faccia in modo che Windows usi l'ora UTC. Non seguire entrambi i passaggi delle istruzioni o ancora non parleranno la stessa lingua! Ti consigliamo di fare in modo che Linux usi l'ora locale, se possibile.

    Opzione 1: rendere Linux utilizzare l'ora locale

    Fare in modo che Linux usi l'ora locale nello stesso modo in cui Windows è probabilmente l'opzione migliore. Windows ha un'impostazione del Registro di sistema che lo costringe a memorizzare l'ora come UTC, ma a quanto pare non è ben supportato e può causare problemi con alcune applicazioni di terze parti che presuppongono sempre che l'orologio hardware sia in ora locale. È anche incompatibile con il servizio di sincronizzazione temporale di Internet di Windows.

    I passaggi per rendere il tuo sistema Linux utilizza l'ora locale possono variare dalla distribuzione Linux alla distribuzione Linux. Tuttavia, su qualsiasi distribuzione Linux con systemd, è possibile utilizzare timedatectl comando per fare questo cambiamento. Funzionerà su versioni moderne di Ubuntu, Fedora, Red Hat, Debian, Mint e altre distribuzioni Linux che usano systemd.

    Per apportare questa modifica, innanzitutto apri una finestra di Terminale sul tuo sistema Linux. Eseguire il seguente comando per inserire l'orologio in tempo reale sulla scheda madre in ora locale. Linux memorizzerà l'ora in ora locale, proprio come fa Windows.

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

    Per verificare le impostazioni correnti, esegui:

    timedatectl

    Se vedi "RTC in locale TZ: sì", Linux è impostato per utilizzare il fuso orario locale anziché UTC. Il comando avverte che questa modalità non è completamente supportata e può causare alcuni problemi quando si passa da un fuso orario all'altro con l'ora legale. Tuttavia, questa modalità è probabilmente supportata meglio dell'opzione UTC in Windows. Se si esegue il dual boot con Windows, Windows gestirà l'ora legale per voi.

    Se si desidera annullare questa modifica, eseguire il seguente comando:

    timedatectl set-local-rtc 0 --adjust-system-clock

    Opzione due: Rendi Windows Usa ora UTC

    Fare in modo che Windows usi l'ora UTC come Linux non è probabilmente l'opzione migliore. È possibile modificare il registro per fare in modo che Windows utilizzi l'ora UTC, ma ciò potrebbe potenzialmente causare più problemi rispetto al semplice utilizzo di Linux nell'ora locale.

    Se si desidera eseguire questa operazione, in primo luogo si desidera disabilitare la funzionalità di aggiornamento dell'ora di Internet su Windows. Ciò garantisce che Windows non imposterà l'orologio in modo errato durante il tentativo di sincronizzare l'ora corrente da Internet. In Windows 10, vai su Impostazioni> Ora e lingua e disattiva "Imposta ora automaticamente". Su Windows 7, fare clic con il pulsante destro del mouse sull'orologio di sistema nella barra delle applicazioni e selezionare "Regola data / ora". Fai clic sulla scheda "Ora Internet", fai clic sul pulsante "Modifica impostazioni", deseleziona l'opzione "Sincronizza con un server ora Internet" e fai clic su "OK".

    Rendi Windows Usa l'ora UTC Modificando il registro

    Ora sarà necessario aggiungere il valore appropriato al registro di Windows. Ecco il nostro avvertimento standard: l'Editor del Registro di sistema è uno strumento potente che può essere utilizzato in modo improprio per rendere il sistema instabile o addirittura inutilizzabile. Questo è un trucco molto semplice e non dovresti avere problemi se segui le istruzioni. Detto questo, se non hai mai lavorato prima, considera di leggere come utilizzare l'Editor del Registro di sistema prima di iniziare. E sicuramente eseguire il backup del registro (e del computer!) Prima di apportare modifiche.

    Per prima cosa, apri l'editor del registro facendo clic su Start, digita "regedit" e premi Invio. Accetta la richiesta di sicurezza che appare.

    Passare alla seguente chiave nel riquadro sinistro dell'editor del Registro di sistema:

    HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ TimeZoneInformation

    Sulle ultime versioni di Windows 10, puoi copiare e incollare la riga sopra nella casella dell'indirizzo. Tuttavia, questo hack funzionerà anche su Windows 7.

    Fare clic con il tasto destro del mouse sulla chiave "TimeZoneInformation" e selezionare Nuovo> Valore DWORD (32 bit).

    Dai un nome al tuo nuovo valore RealTimeIsUniversal.

    Fare doppio clic sul RealTimeIsUniversal valore appena creato, impostare è il valore dei dati su 1, e fai clic su "OK".

    A questo punto hai finito e puoi chiudere l'editor del registro. Windows memorizzerà l'ora in UTC, proprio come fa Linux.

    Se si desidera annullare questa modifica, tornare a questa posizione nel registro, fare clic con il tasto destro del mouse su RealTimeIsUniversal valore aggiunto e cancellarlo dal registro.

    Scarica il nostro Hack del Registro di sistema One-Click

    Se non si desidera modificare personalmente il registro, è possibile utilizzare la nostra modifica del registro scaricabile. Abbiamo creato un trucco che fa sì che Windows usi l'ora UTC e che lo ripristini all'ora locale. Entrambi sono inclusi nel seguente file ZIP. Basta scaricare il file, fare doppio clic sulla modifica che si desidera utilizzare e accettare di aggiungere le informazioni al registro.

    Rendi Windows Usa ora UTC

    Gli hack sopra citati fanno la stessa cosa che abbiamo descritto sopra. La funzione Crea Windows Usa ora UTC crea la voce "RealTimeIsUniversal" con un valore di "1", mentre la funzione Crea Windows Usa ora locale elimina la voce "RealTimeIsUniversal".

    Se vuoi vedere cosa fa questo o qualsiasi altro file .reg, fai clic destro e seleziona "Modifica" per visualizzare il file nel Blocco note. Puoi facilmente creare i tuoi propri hack del registro, che consistono semplicemente in un elenco di voci di registro da aggiungere, modificare e rimuovere in un elenco formattato correttamente.

    Informazioni su Windows con doppio avvio su un Mac?

    Sebbene MacOS di Apple usi il tempo UTC come Linux, non dovresti fare nulla di speciale quando esegui Windows in Boot Camp su un Mac. I driver Apple Boot Camp gestiscono tutto. (I dual booter di Hackintosh sono un'altra storia, comunque, e dovremo provare a usare il tweak del registro di Windows qui sopra.)


    Se ti stai chiedendo perché Windows utilizza l'ora locale invece di UTC come altri sistemi operativi, il blog ufficiale di Microsoft The Old New Thing lo spiega qui. In breve, era per preservare la retrocompatibilità con i sistemi Windows 3.1 e per evitare che le persone si confondessero quando impostano il tempo nel BIOS del computer. Naturalmente, i produttori di PC hanno scelto l'ora locale per essere compatibili con Windows e Windows ha scelto l'ora locale per essere compatibile con la decisione scelta dai produttori di PC, quindi il ciclo è diventato auto-rinforzante.

    Attualmente non esiste uno standard per l'etichettatura se un tempo è memorizzato come UTC o ora locale nel BIOS o nel firmware UEFI, che probabilmente sarebbe la soluzione più logica. Ma richiederebbe un po 'di lavoro, e la maggior parte delle persone non noterà mai che sistemi operativi diversi usano formati di tempo diversi, tranne che nelle configurazioni dual-boot.