Lo normal es sincronizar la hora contra un server time local. El tema es que algunas veces no dispondremos de acceso al ser una máquina aislada o directamente en algunos entornos no tendremos un servidor time local.
En esos casos podemos optar por uno externo y actualizar a manopla la hora:
Sincronizar hora con NTP server:
$ ntpdate -u servidortime
Aquí algunos servers que puedes utilizar para sincronizar la hora: www.pool.ntp.org/zone/europe
Una forma cutre pero funcional de actualizar la hora es así en máquinas aisladas:
$ date --date='+46 seconds'
# timedatectl set-time '2022-08-22 07:40:00'
Si por ejemplo son unos 46 segundos de offset se puede mirar la hora sumando esos 46 segundos y luego cambiarla rápidamente. Si en cambiarla tardas unos segundos pues se los añades a la comprobación.
Así de forma rápida cambias la hora por una sin ese desfase. No es lo más correcto pero en máquinas aisladas pues va bien.
Si nos da el fallo: «Failed to set time: Automatic time synchronization is enabled» se puede lanzar así desactivando y activando de nuevo:
# timedatectl set-ntp 0; timedatectl set-time '2022-08-23 08:22:00'; timedatectl set-ntp 1
En caso de querer sincronizar la hora con un servidor NTP
En por ejemplo Centos 7.6 se podría hacer así:
# yum remove chrony
# yum -y install ntpdate ntp nano
# timedatectl | grep -iE "NTP enabled|NTP sync"
# vi /etc/ntp.conf
server xxx.xxx.xxx.xxx iburst
server xxx.xxx.xxx.xxx iburst
server xxx.xxx.xxx.xxx iburst
# systemctl enable ntpd
# systemctl restart ntpd
# timedatectl set-ntp 1
# ntpstat
# timedatectl | grep -iE "NTP enabled|NTP sync"
# ntpdate -d xxx.xxx.xxx.xxx
Y eso es todo lo que quería dejar comentado.
Saludos cordiales.