
Mi máquina tiene dos sistemas operativos, una distribución de Linux (principal) y un Windows 7 (rara vez se usa).
Ambos O/S están configurados en mi zona horaria (UTC+1).
Dependiendo de cómo configuro la hora en el BIOS, Windows muestra la hora 1 hora antes de la hora actual o Linux 1 hora después.
¿Por qué pasó esto?
La máquina Windows generalmente comienza desconectada de Internet; el de Linux en cambio está conectado, por lo que corrige la fecha al poco tiempo, pero al reiniciar vuelve a estar mal configurado.
EDITAR: encontré que era un duplicado dehttps://serverfault.com/questions/16107/why-does-ubuntu-9-04-reset-my-windows-clock
Respuesta1
Se me ocurren un par de cuestiones que pueden estar en juego aquí.
En primer lugar, es posible que tenga habilitado el horario de verano en uno y no en el otro, o que uno de sus sistemas operativos esté configurado para la zona horaria incorrecta.
Es posible que Linux esté asumiendo que el reloj del hardware de su computadora está configurado en UTC en lugar de local, y Windows puede pensar que está configurado en local. Si estás en UTC+1 o UTC-1, es posible que veas ese comportamiento. Es posible que Linux esté cargando el valor del reloj del hardware, ajustándolo para que sea local y luego transformándolo nuevamente a UTC antes de escribir en el reloj del hardware en el momento del apagado.
Respuesta2
Su distribución de Linux asume que el reloj de su BIOS usa UTC y su instalación de Windows asume que la hora de su BIOS está en la hora local.
Así es como lo configuré en mi computadora portátil con arranque dual: hago los cambios en Linux para usar la hora local en lugar de UTC para el reloj del sistema. Primero, ejecute un comando para que la hora se establezca correctamente en el lado de Linux, como root
:
date -s "2 feb 2016 18:05:15"
hwclock --hctosys --localtime
Debe copiar la configuración de fecha/hora del BIOS a su computadora y configurarla a la hora local. hwclock --systohc --localtime
debe configurar la hora del BIOS en hora local en lugar de UTC. Recomendaría configurar la hora con el date
comando anterior, luego ejecutar: hwclock --systohc --localtime Y TAMBIÉN ejecutar: hwclock --hctosys --localtime para asegurarse de que /etc/adjtime tenga la última línea del archivo que diga 'LOCAL' en lugar de 'UTC' o algo así. las --hctosys --localtime
banderas juntas pueden lograr eso mediante programación. Es posible que date
lo haga solo, pero no lo he comprobado.
para comprobar que la hora del sistema es realmente precisa en hora local. No se preocupe por el formato de la cadena de configuración de fecha, es extremadamente flexible. Como ejemplo de otras formas válidas de decirlo:
date -s "2 feb 2016 6:05:15 PM"
date -s "february 2, 2016 6:11:30 PM"
date -s "Tue Feb 2 18:11:30 EST 2016"
(Estoy en hora estándar del este, GMT -5)
Si aún tienes problemas, es posible que tengas que volver a seleccionar una zona horaria. En Debian o derivados como Ubuntu, se utiliza sudo dpkg-reconfigure tzdata
para cambiar las zonas horarias en una interfaz ncurses.
Si no lo tiene, intente encontrar el archivo de información de zona horaria relevante. En mi instalación esto es /usr/share/zoneinfo/America/Indiana/Indianapolis
.
Una vez que lo haya encontrado, cópielo a /etc/localtime
:
cp /usr/share/zoneinfo/America/Indiana/Indianapolis /etc/localtime
Me aseguraría de que la hora siga configurada date
correctamente después de hacer esto. Si no es así, ejecute los dos primeros comandos ( date
y hwclock
) nuevamente.
en Linux debería hacer que cualquier hora que establezca en Linux se comparta correctamente con Windows. Alternativamente, se puede hacer, pero es más difícil configurar Windows para que use UTC. La forma en que se hace esto cambia con las versiones y se sabe que Windows vuelve a la hora local después de las actualizaciones.
Recuerdo una computadora particularmente obstinada en la que hwclock
se anulaba hacer todas las cosas, porque la computadora buscaba la hora actual a través de Internet con NTP. La configuración de la zona horaria era la única forma de solucionarlo sin desactivar NTP por completo.
De todos modos, eso es sólo una gran muestra de todas mis experiencias pasadas con el asunto. Es casi seguro que uno de ellos funcionará. Primero probaría las cosas de la zona horaria, y luego definitivamente probaría las hwclock --systohc --localtime
cosas una vez que haya terminado para asegurarme de que el reloj del BIOS esté en la hora local.