Este team de especialistas despúes de días de investigación y recopilar de información, hallamos la respuesta, deseamos que te sea útil para tu trabajo.
Solución:
En una palabra:
Estamos en 2018, el reloj de hardware debe configurarse en hora UTC, incluso para el arranque dual de Windows.
Para que Windows considere el reloj de hardware como UTC, haga lo siguiente:
- En el registro, bajo
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation
Agrega un keyRealTimeIsUniversal
con un valor00000001
de tipodword
- Deshabilite el servicio de hora de Windows ejecutando este comando:
sc config w32time start= disabled
Ver la explicación de la wiki de Ubuntu
En detalles:
La mayoría de los sistemas operativos consideran que el reloj del hardware es UTC excepto Windows por ridículas razones de compatibilidad y supuestamente para evitar confundir a los usuarios al establecer la hora a través de BIOS (!) (por cierto, vale la pena leer los comentarios en esta publicación de blog)
El wiki de Arch Linux explica bien los inconvenientes de usar la hora local para el reloj de hardware:
Hay dos estándares de tiempo: hora local y hora universal coordinada (UTC). El estándar de hora local depende de la zona horaria actual, mientras que UTC es el estándar de hora global y es independiente de los valores de la zona horaria. Aunque conceptualmente diferente, UTC también se conoce como GMT (Greenwich Mean Time).
El sistema operativo establece el estándar utilizado por el reloj de hardware (reloj CMOS, la hora del BIOS). De manera predeterminada, Windows usa la hora local, macOS usa UTC y los sistemas similares a UNIX varían. Un sistema operativo que utiliza el estándar UTC generalmente considerará el reloj del hardware como UTC y lo ajustará para establecer la hora del sistema operativo en el arranque de acuerdo con la zona horaria.
Si se instalan varios sistemas operativos en una máquina, todos obtendrán la hora actual del mismo reloj de hardware: se recomienda adoptar un estándar único para el reloj de hardware para evitar conflictos entre sistemas y establecerlo en UTC. De lo contrario, si el reloj del hardware está configurado en hora local, más de un sistema operativo puede ajustarlo después de un cambio de horario de verano, por ejemplo, lo que resulta en una corrección excesiva; También pueden surgir problemas cuando se viaja entre diferentes zonas horarias y se utiliza uno de los sistemas operativos para restablecer el reloj del sistema/hardware.
Compruebe cuál es su configuración en /etc/default/rcS
son si es UTC=yes
luego configúrelo en UTC en su BIOS y Kubuntu usará su archivo de zona horaria para ajustarlo correctamente. El problema es que si cree que su BIOS es UTC y en realidad es la hora local, su hwclock siempre estará desincronizado y cuando use datos de zona horaria como lo haría en un reloj UTC, terminará con la hora incorrecta.
En la mayoría de los casos, recomendaría configurar el BIOS a la hora UTC. pero si haces un arranque dual con Windows. Recomendaría la hora local. Windows no maneja correctamente BIOS-set-as-UTC. Entonces, cada vez que cambias de sistema operativo, uno jode el tiempo del otro.
Mis dos centavos
Puede piratear el registro para que Windows admita la hora UTC, aunque consulte esto ¿Windows 10 admite UTC como hora del BIOS?
Si piensas que te ha sido de provecho este post, te agradeceríamos que lo compartas con más programadores de esta manera nos ayudas a extender nuestro contenido.