Cómo arreglar Windows y Linux mostrando diferentes momentos en que el arranque dual
Su computadora almacena la hora en un reloj de hardware en su placa base. El reloj mantiene un registro del tiempo, incluso cuando la computadora está apagada. De forma predeterminada, Windows asume que la hora se almacena en la hora local, mientras que Linux asume que la hora se almacena en la hora UTC y aplica un desplazamiento. Esto lleva a que uno de sus sistemas operativos muestre la hora incorrecta en una situación de arranque dual.
Para solucionar este problema, tiene dos opciones: hacer que Linux use la hora local o hacer que Windows use la hora UTC. ¡No sigas los dos pasos de instrucciones o aún no hablarán el mismo idioma! Le recomendamos que haga que Linux use la hora local, si es posible.
Opción uno: hacer que Linux use la hora local
Hacer que Linux use la hora local de la misma manera que Windows es probablemente la mejor opción. Windows tiene una configuración de registro que la obliga a almacenar la hora como UTC, pero, según se informa, no está bien soportada y puede causar problemas con algunas aplicaciones de terceros que siempre suponen que el reloj del hardware está en hora local. También es incompatible con el servicio de sincronización de hora de Internet de Windows..
Los pasos para hacer que su sistema Linux use la hora local pueden variar desde la distribución de Linux a la distribución de Linux. Sin embargo, en cualquier distribución de Linux con systemd, puede utilizar el timedatectl
Mando para hacer este cambio. Esto funcionará en versiones modernas de Ubuntu, Fedora, Red Hat, Debian, Mint y otras distribuciones de Linux que usan systemd.
Para hacer este cambio, primero abra una ventana de Terminal en su sistema Linux. Ejecute el siguiente comando para poner el reloj de tiempo real en la placa base en la hora local. Linux almacenará la hora en hora local, al igual que Windows.
timedatectl set-local-rtc 1 --adjust-system-clock
Para verificar su configuración actual, ejecute:
timedatectl
Si ve "RTC en TZ local: sí", Linux está configurado para usar la zona horaria local en lugar de UTC. El comando le advierte que este modo no es totalmente compatible y puede causar algunos problemas al cambiar entre zonas horarias y con el horario de verano. Sin embargo, este modo es probablemente mejor admitido que la opción UTC en Windows. Si realiza un arranque dual con Windows, Windows manejará el horario de verano para usted.
Si alguna vez desea deshacer este cambio, ejecute el siguiente comando:
timedatectl set-local-rtc 0 --adjust-system-clock
Opción dos: hacer que Windows use la hora UTC
Hacer que Windows use el tiempo UTC como Linux probablemente no sea la mejor opción. Puede editar el registro para hacer que Windows use la hora UTC, pero esto podría causar más problemas que solo hacer que Linux use la hora local.
Si desea hacer esto, primero deberá desactivar la función de actualización de la hora de Internet en Windows. Esto garantiza que Windows no configurará el reloj incorrectamente cuando intente sincronizar la hora actual desde Internet. En Windows 10, dirígete a Configuración> Hora e idioma y desactiva "Establecer la hora automáticamente". En Windows 7, haga clic derecho en el reloj del sistema en la barra de tareas y seleccione "Ajustar fecha / hora". Haga clic en la pestaña "Hora de Internet", haga clic en el botón "Cambiar configuración", desmarque la opción "Sincronizar con un servidor de hora de Internet" y haga clic en "Aceptar".
Hacer que Windows use la hora UTC editando el registro
Ahora deberá agregar el valor apropiado al registro de Windows. Esta es nuestra advertencia estándar: el Editor del Registro es una herramienta poderosa y el mal uso puede hacer que su sistema sea inestable o incluso inoperable. Este es un truco bastante fácil y no deberías tener ningún problema siempre y cuando sigas las instrucciones. Dicho esto, si nunca ha trabajado con él antes, considere leer sobre cómo usar el Editor del Registro antes de comenzar. Y definitivamente respalde el Registro (¡y su computadora!) Antes de hacer cambios.
Primero, abra el Editor del Registro haciendo clic en Inicio, escribiendo "regedit" y presionando Enter. De acuerdo con el aviso de seguridad que aparece.
Navegue a la siguiente clave en el panel izquierdo del editor de registro:
HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ TimeZoneInformation
En las últimas versiones de Windows 10, puede copiar y pegar la línea anterior en el cuadro de dirección. Sin embargo, este hack funcionará también en Windows 7.
Haga clic con el botón derecho en la tecla "TimeZoneInformation" y seleccione Nuevo> Valor DWORD (32 bits).
Nombra tu nuevo valor RealTimeIsUniversal
.
Haga doble clic en RealTimeIsUniversal
valor que acaba de crear, establezca los datos de valor en 1
, y haga clic en "Aceptar".
Ya ha terminado y puede cerrar el Editor del Registro. Windows almacenará el tiempo en UTC, al igual que lo hace Linux.
Si alguna vez desea deshacer este cambio, vuelva a esta ubicación en el registro, haga clic con el botón derecho en RealTimeIsUniversal
el valor que ha agregado, y elimínelo de su registro.
Descargar nuestro Hack de registro de un solo clic
Si no desea editar el registro usted mismo, puede utilizar nuestro truco de registro descargable. Creamos un truco que hace que Windows use la hora UTC, y uno que lo restaura a la hora local. Ambos están incluidos en el siguiente archivo ZIP. Simplemente descargue el archivo, haga doble clic en el truco que desea usar y acepte agregar la información a su registro.
Hacer que Windows use la hora UTC
Los hacks anteriores hacen lo mismo que describimos anteriormente. El truco "Make Windows Use UTC Time" crea la entrada "RealTimeIsUniversal" con un valor de "1", mientras que el truco "Make Windows Use Local Time" elimina la entrada "RealTimeIsUniversal"..
Si alguna vez desea ver qué hace este o cualquier otro archivo .reg, haga clic con el botón derecho y seleccione "Editar" para ver el archivo en el Bloc de notas. Puede hacer fácilmente sus propios trucos de registro, que solo consisten en una lista de entradas de registro para agregar, editar y eliminar en una lista con el formato correcto.
¿Qué pasa con el arranque dual de Windows en una Mac??
Aunque el macOS de Apple usa el tiempo UTC como lo hace Linux, no debería tener que hacer nada especial al ejecutar Windows en Boot Camp en una Mac. Los controladores de Apple Boot Camp manejan todo. (Sin embargo, los booters dobles de Hackintosh son otra historia, y tendremos que intentar usar el ajuste de registro de Windows anterior).
Si se pregunta por qué Windows usa la hora local en lugar de UTC como otros sistemas operativos, el blog oficial de Microsoft The Old New Thing lo explica aquí. En resumen, fue para preservar la compatibilidad con los sistemas Windows 3.1 y para evitar que las personas se confundan cuando configuran la hora en el BIOS de la computadora. Por supuesto, los fabricantes de PC eligieron la hora local para ser compatibles con Windows y Windows eligió la hora local para ser compatible con la decisión que eligieron los fabricantes de PC, por lo que el ciclo se volvió auto reforzado.
Actualmente no hay un estándar para etiquetar si una hora se almacena como UTC o hora local en BIOS o firmware UEFI, lo que probablemente sería la solución más lógica. Pero requeriría un poco de trabajo, y la mayoría de las personas nunca notarán que diferentes sistemas operativos usan diferentes formatos de hora, excepto en configuraciones de arranque dual.