Hace ya tiempo, una las problemáticas que tenia era el como poner la hora correctamente a una cuenta de usuario en un VPS con tecnología OpenVZ, ya que por este tipo de visualización los VPS sincronizan o toman la hora directamente del nodo.
Al correr el comando date para poner manualmente la hora nos arrojara un error.
[root@zero ~]# date +%T -s «08:03:00»
date: cannot set date: Operation not permitted
08:03:00
Pero apesar de este error aun podemos cambiar la zona horaria del VPS y asi obtener la hora correcta (aunque en algunos casos si el nodo tiene desfasada la hora por minutos a nosotros nos afectara).
[root@zero /]# rm /etc/localtime
rm: remove symbolic link `/etc/localtime’? y
[root@zero /]# ln -s /usr/share/zoneinfo/America/Mexico_City /etc/localtime
[root@zero /]#
Este cambio afectara a todos los usuarios internos del VPS pero si por alguna razón tenemos usuarios en otra zona horaria y estos necesitan su hora correcta podemos, cambiar su zona horaria para su cuenta especifica usando el comando tzselect.
[zero@zero /]$ tzselect
Please identify a location so that time zone rules can be set correctly.
Please select a continent or ocean.
1) Africa
2) Americas
3) Antarctica
4) Arctic Ocean
5) Asia
6) Atlantic Ocean
7) Australia
8) Europe
9) Indian Ocean
10) Pacific Ocean
11) none – I want to specify the time zone using the Posix TZ format.
#?
Con lo cual tenemos un tipo de wizzard para poner la hora en el usuario, y nos pedirá que editemos un archivo(.profile o .bash_profile) de la carpeta home del usuario, para que este cambio sea permanente en este.
You can make this change permanent for yourself by appending the line
TZ=’America/Chicago’; export TZto the file ‘.profile’ in your home directory; then log out and log in again.
Si corremos el comando en consola, con el usuario a cambiar la hora, vemos que si esta cambiando la zona horaria para el este