Este artículo te mostrará cómo obtener rápidamente la hora exacta del servidor en una distribución CentOS. Normalmente, si instalaste CentOS con un entorno de escritorio, la forma más sencilla de configurar tu ordenador para sincronizar el reloj con un servidor remoto es usando la interfaz gráfica «Enable Network Time Protocol» (“Activar Protocolo de Tiempo de Red”).
Sin embargo, hay ocasiones en que esta función no funciona correctamente. En este artículo te mostraremos una forma sencilla de establecer la hora exacta del servidor a través de la línea de comandos.
Nota: Todos los comandos de este artículo se ejecutan como usuario root. Si administras el sistema como un usuario normal, usa el comando sudo
para obtener privilegios de root.
Podemos hacerlo con la utilidad de línea de comandos ntp
y ntpdate
, que establece la fecha y hora del sistema a través de NTP. Si no tienes este paquete instalado en tu sistema, ejecuta el siguiente comando para instalarlo:
yum install ntp ntpdate
Después de instalar los paquetes, inicia e habilita el servicio ntpd
y revisa su estado de la siguiente manera:
systemctl start ntpd
systemctl enable ntpd
systemctl status ntpd
[root@adlinux ~]# systemctl start ntpd
[root@adlinux ~]# systemctl enable ntpd
Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.
[root@adlinux ~]# systemctl status ntpd
● ntpd.service - Network Time Service
Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2018-02-05 11:47:20 EAT; 24s ago
Main PID: 1324 (ntpd)
CGroup: /system.slice/ntpd.service
└─1324 /usr/sbin/ntpd -u ntp:ntp -g
Jan 05 11:47:20 adlinux ntpd[1324]: Listen normally on 6 enp0s8 fe80::ba02:1...23
Jan 05 11:47:20 adlinux ntpd[1324]: Listen normally on 7 enp0s3 fe80::a00:27...23
Jan 05 11:47:20 adlinux ntpd[1324]: Listening on routing socket on fd #24 fo...es
Jan 05 11:47:20 adlinux ntpd[1324]: Started Network Time Service.
Jan 05 11:47:20 adlinux ntpd[1324]: 0.0.0.0 c016 06 restart
Jan 05 11:47:20 adlinux ntpd[1324]: 0.0.0.0 c012 02 freq_set kernel 0.000 PPM
Jan 05 11:47:20 adlinux ntpd[1324]: 0.0.0.0 c011 01 freq_not_set
Jan 05 11:47:20 adlinux ntpd[1324]: 0.0.0.0 c61c 0c clock_step +1.039067 s
Jan 05 11:47:20 adlinux ntpd[1324]: 0.0.0.0 c414 04 freq_mode
Jan 05 11:47:20 adlinux ntpd[1324]: 0.0.0.0 c618 08 no_sys_peer
Hint: Some lines were ellipsized, use -l to show in full.
[root@adlinux ~]#
Luego, ejecuta el comando ntpdate
que se muestra a continuación para agregar los servidores CentOS NTP especificados. Aquí, la clave -u
le indica a ntpdate
que debe usar un puerto no privilegiado para los paquetes salientes, y -s
permite registrar la salida de la salida estándar (por defecto) para el sistema syslog.
ntpdate -u -s 0.centos.pool.ntp.org 1.centos.pool.ntp.org 2.centos.pool.ntp.org
Después, reinicia el demonio ntpd
para sincronizar la fecha y hora del servidor CentOS NTP con tu fecha y hora local.
systemctl restart ntpd
Ahora, verifica con el comando timedatectl
si la sincronización NTP está activada.
timedatectl
Finalmente, usando la utilidad hwclock
, establece el reloj de hardware en la hora del sistema actual usando la bandera -w
de la siguiente manera:
hwclock -w
Para obtener más información, consulta las páginas de manual de ntpdate
y hwclock
.
man ntpdate
man hwclock
¡Gracias por tu tiempo leyendo el artículo!
Si tienes alguna pregunta, háznosla saber en los comentarios.
Pingback: 5 Comandos Linux para Gestionar la Hora del Sistema » Blog Linux