Cambiar la zona horaria en Debian mantiene la hora local en UTC

27

Estoy tratando de hacer que los programas inicien sesión en la hora local por mi propia cordura.

He actualizado mi zona horaria con:

 dpkg-reconfigure tzdata

Pero el resultado de ese comando es:

Current default time zone: 'Australia/Adelaide'
Local time is now:      Mon May 20 03:09:52 UTC 2013.
Universal Time is now:  Mon May 20 03:09:52 UTC 2013.

Observe el UTC enLocal time

¿Alguna razón por la que esto puede ser?

He buscado mucho en Google pero mi problema parece diferente para todos :(

Aquí hay algunos detalles más:

# cat /etc/timezone
Australia/Adelaide

# date
Mon May 20 03:41:06 UTC 2013

# export TZ='Australia/Adelaide'; date
Mon May 20 13:16:11 CST 2013

La configuración export TZ='Australia/Adelaide';en mi /etc/profilehace que el datetrabajo sea predeterminado en una sesión bash pero no cambia la fecha de registro del sistema (después de reiniciar el servicio)

Editar:

# ls -l /etc/localtime
lrwxrwxrwx 1 root root 20 May 10 14:48 /etc/localtime -> /usr/share/zoneinfo/

# ls /etc/localtime/
Adelaide    Chile    GMT        Japan      PST8PDT    Universal
Africa      Cuba     GMT+0      Kwajalein  Pacific    W-SU
America     EET      GMT-0      Libya      Poland     WET
Antarctica  EST      GMT0       MET        Portugal   Zulu
Arctic      EST5EDT  Greenwich  MST        ROC        iso3166.tab
Asia        Egypt    HST        MST7MDT    ROK        localtime
Atlantic    Eire     Hongkong   Mexico     Singapore  localtime.dpkg-new
Australia   Etc      Iceland    Mideast    SystemV    posix
Brazil      Europe   Indian     NZ         Turkey     posixrules
CET         Factory  Iran       NZ-CHAT    UCT        right
CST6CDT     GB       Israel     Navajo     US         zone.tab
Canada      GB-Eire  Jamaica    PRC        UTC

Responder:

Lo resolvió gracias a atascado. por alguna razón tuve / etc / localtime como un enlace simbólico ... el chico de TI aquí configuró el servidor usando Turnkey 12, así que tal vez ese era el problema.

# mv /etc/localtime /etc/localtime.old
# cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtime
# date
Thu May 23 09:36:17 CST 2013
cómplice
fuente

Respuestas:

22

Intenta de esta manera:

$ sudo cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtime
atascado
fuente
cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtimeDIT no cambia nada para mí :( hora local es GMT aún, he añadido lo ls -l /etc/localtimedice también.
2
¿Por qué creaste un enlace simbólico allí? Necesita copiar un archivo ... Arregle eliminando el enlace simbólico "rm / etc / localtime" y haga cp como escribí "cp / usr / share / zoneinfo / Australia / Adelaide / etc / localtime" ;-)
el enlace simbólico estaba allí por defecto ... tal vez una cosa llave en mano o algo así. mv /etc/localtime /etc/localtime.old cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtimesolucionó el problema :) ¡Gracias!
cómplice
2
Creo que copiar está mal. ¿Qué pasa si el archivo zoneinfo cambia? Si / etc / localtime es un enlace simbólico (está en Debian), sobrescribe algún otro archivo zoneinfo.
XTF
32

Creo que la mejor manera de lograr esto es ejecutando:

sudo dpkg-reconfigure tzdata
Dimitrios
fuente
+1, esta es definitivamente la forma correcta de hacerlo en sistemas Debian.
jhauris
2
Sí, dpkg-reconfigure tzdatafue lo primero que intenté. No funcionó para mí porque /etc/localtimeera un enlace simbólico por alguna razón. Después de arreglar eso, ambas formas cambiarían la zona horaria correctamente.
cómplice
¡sí! ppl parece pensar que sí, pero estoy usando Debian en un contenedor acoplable ... ¿entonces qué?
superhéroe
-1

Establezca la hora automáticamente con el "Protocolo de hora de red". Use el siguiente comando para instalar ntp en debian.

$ sudo apt-get install ntp

Para obtener información detallada, lea la documentación https://wiki.debian.org/DateTime

ashish2py
fuente
Es mejor proporcionar los pasos aquí y utilizar el enlace como referencia para obtener más detalles. De esa manera, su respuesta no pierde todo su valor cuando el enlace deja de ser válido.
Anthon