Article ID: 686, created on Feb 6, 2009, last review on Oct 28, 2014

  • Applies to:
  • Virtuozzo
  • Virtuozzo containers for Linux
  • Virtuozzo hypervisor

Resolución

No es posible cambiar la hora del sistema en un contenedor, puesto que todos los VEs presentes en el nodo hardware tienen la misma hora del sistema. De todos modos, es posible cambiar la franja horaria predeterminada del sistema en un VE reemplazando, por ejemplo, /etc/localtime por el archivo de /usr/share/zoneinfo, el cual contiene la descripción de su franja horaria.

Si es necesario tener una hora en el nodo y otra en los contenedores, será necesario retocar la plantilla de SO.

Por ejemplo, utilizando la plantilla de SO centos-6-x86_64:

  1. Busque la ocurrencia de "/etc/localtime" en cualquiera de los scripts de la plantilla de SO:

    [root@pcs ~]# grep localtime /vz/template/centos/6/x86_64/config/os/default/*
    /vz/template/centos/6/x86_64/config/os/default/post-cache:[ -f /etc/localtime ] && cp -fp /etc/localtime etc/localtime
    
  2. De encontrarse estas líneas, coméntelas:

    [root@pcs ~]# vi /vz/template/centos/6/x86_64/config/os/default/post-cache
    [root@pcs ~]# grep localtime /vz/template/centos/6/x86_64/config/os/default/post-cache
    #[ -f /etc/localtime ] && cp -fp /etc/localtime etc/localtime
    
  3. Añada las siguientes líneas al script post instalación:

    [root@pcs ~]# vi /vz/template/centos/6/x86_64/config/os/default/post-install
    [root@pcs ~]# tail /vz/template/centos/6/x86_64/config/os/default/post-install
    
    # Force regeneration of mime-database, due to shared-mime-info
    # post-install script failure
    /usr/bin/update-mime-database /usr/share/mime > /dev/null 2>&1
    
    ## Move to a new time zone     <---------added
    rm -f /etc/localtime     <---------added
    ln -s /usr/share/zoneinfo/posix/Asia/Tokyo /etc/localtime     <---------added
    
    popd > /dev/null
    
  4. Vuelva a crear la caché de la plantilla de SO:

    [root@pcs ~]# vzpkg remove cache centos-6-x86_64 ; vzpkg create cache centos-6-x86_64
    

Una vez hecho esto, cuando se cree un contenedor nuevo en esta plantilla de SO, este obtendrá la franja horaria configurada. En el caso de los contenedores ya existentes, es necesario ejecutar los comandos de forma manual:

  # rm -f /etc/localtime
  # ln -s /usr/share/zoneinfo/posix/Asia/Tokyo /etc/localtime

e8e50b42231236b82df27684e7ec0beb d02f9caf3e11b191a38179103495106f 2897d76d56d2010f4e3a28f864d69223 a26b38f94253cdfbf1028d72cf3a498b 0dd5b9380c7d4884d77587f3eb0fa8ef

Email subscription for changes to this article
Save as PDF