Configurar fecha/hora, zona horaria y NTP en GNU/Linux (línea de comando)

05Hola a tod@s!

La verdad es que esto lo he probado en sistemas basados en Debian (Ubuntu más que todo 😀 )  Pero seguramente debe de funcionar para cualquier sistema GNU/Linux.

Si tenemos un servidor como tal, es bien raro que tengamos entorno gráfico instalado en él (dado que es un gasto de recursos innecesario…) por éste motivo, es de suma importancia poder saber el comando específico para personalizar la fecha y hora de nuestro servidor. Sé que es un tema un poco trivial, pero realmente es útil, porque a veces se puede olvidar el formato de cómo “setear” la fecha/hora correctamente.

Sin más, si digamos queremos asignar la fecha/hora –> 03/01/2017 03:02pm (3 de Enero de 2017), debemos de ingresar la siguiente línea de comando:

sudo date –set “2017-01-03 15:02:00”

El sistema nos retornará la fecha/hora en un formato “más entendible” humanamente hablando :v

01

Ahora, algo interesante es que podemos establecer la fecha y hora también del BIOS del equipo. Esto es bastante bueno de saberlo, porque no tenemos que reiniciar, entrar al SETUP, y hacer el cambio… basta con que tengamos una sesión abierta en nuestro SO para que podamos aplicar el cambio por línea de comando. El comando que nos permite hacer esto es hwclock

Si ejecutamos hwclock sin ningún parámetro, nos mostrará la fecha/hora que tiene configurada actualmente la BIOS. Si en un dado caso no esta correcta la información, podemos personalizarla así:

sudo hwclock –set –date=”2017-01-03 15:08:00″

O más fácil aún!, si ya tenemos correcta nuestra fecha/hora de nuestro sistema operativo, podemos aplicar ésta misma en nuestra BIOS así:

sudo hwclock –systohc

Se puede usar el parámetro -w pero yo siento más sencillo memorizar systohc… ¿Porqué?

sys = Fecha/Hora del Sistema Operativo
to = a
hc = Hardware Clock

Para ver más información referente a la fecha/hora local del sistema, la Universal, la RTC, ver la zona horaria configurada, ver si se tiene activo la sincronización con un servidor NTP, etc., podemos hacer uso del comando timedatectl

02

Éste comando también nos sirve para configurar la zona horaria de nuestro sistema. En mi caso la tengo bien configurada (America/El_Salvador), pero si digamos ustedes no la tienen así, es conveniente tenerlo correctamente para evitar confusión en el sistema (fecha y hora)… Entonces lo primero es identificar cómo se llama nuestra zona horaria específica así:

sudo timedatectl list-timezones

Dicha línea de comando nos muestra todas las zonas, pero podemos hacer un filtro de esto con nuestro buen amigo comando grep

sudo timedatectl list-timezones | grep “Salvador”

En éste caso, estoy haciendo un filtro donde diga “Salvador” (como de El Salvador), pero ahí se puede poner el de ustedes… digamos Mexico, Argentina, etc.; tomar en cuenta que la escritura de ésta zona debe ser exacta a la que se nos muestra. Ahora ya podemos configurarla con dicha información así:

sudo timedatectl set-timezone “America/El_Salvador”

y verificamos con timedatectl solito para ver que todo esté bien.

Ahora, se puede menospreciar este asunto de la fecha y hora, pero la verdad es que es un tema sumamente importante! especialmente si se maneja acceso SSH digamos (por un error de fecha/hora, adiós conexión 🙁 ); entonces, recomiendo tener presente éste tema y no verlo de menos jejej.

Si queremos tener bien sincronizada nuestro tiempo en base a nuestra zona horaria y a un servidor NTP, basta con que instalemos el paquete ntp:

sudo apt update
sudo apt install ntp

Verificamos con timedatectl si tenemos habilitado la sincronización NTP (debería de salir que Si).

Ahora ya deberíamos de tener sincronizada la fecha/hora con la de los servers NTP asignados por defecto en el archivo de configuración /etc/ntp.conf  (son Pool o servidores de Ubuntu por defecto).

Si hay algún problema, siempre se puede entrar al archivo de configuración /etc/ntp.conf y hacer los cambios pertinentes, agregando o quitando los servidores NTP o haciendo otro tipo de cosas.

# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
# more information.
pool 0.north-america.pool.ntp.org iburst
pool 0.ubuntu.pool.ntp.org iburst
pool 1.ubuntu.pool.ntp.org iburst
pool 2.ubuntu.pool.ntp.org iburst
#pool 3.ubuntu.pool.ntp.org iburst

Pero si se hace eso, se debe recargar la configuración del servicio…

sudo service ntp restart

Chequeamos nuevamente con timedatectl para ver que estamos bien, y también podemos ver el estado de los accesos a los servidores NTP así:

03

y eso es todo! Saludos cordiales! :V

Comentarios por Facebook

comentarios

4 respuestas a “Configurar fecha/hora, zona horaria y NTP en GNU/Linux (línea de comando)”

  1. hola, en mi comutadora tengo tres zonas horarias y la opcion de añadir no aparece por lo tanto no puedo cambiarlo. quiero elimiar las dos que no utilizo para cambiar la fecha y la hra estan incorrectos.. por favor.. como hago para eliminar las dos zonas horarias de la canaima

  2. Muy bueno el tema, me surge una pregunta como configuro mi servidor NTP, luego cambiar la fecha en mi servidor (ejemplo cambio mi servidor a una fecha un día antes y que mis clientes conectado a mi servidor también cambien los equipos clientes conectados a mi servidor hora), cuando configuro mi NTP como el post dice funciona bien pero cuando cambio la fecha y hora de mi servidor y luego sincronizo en windows con el servidor configurado me sincroniza pero con fecha y hora del internet no se de donde lo toma esa fecha y hora.
    La verdad yo quisiera controlar la hora desde un servidor a todos mis clientes conectados a mi servidor de hora GRACIAS DE ANTEMANO POR SU RESPUESTA.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*