Si usa bash, la siguiente línea hará el trabajo
$ cat </dev/tcp/time.nist.gov/13
56525 13-08-21 23:07:09 50 0 0 55.6 UTC(NIST) *
Aprovecha las capacidades de red integradas¹ del shell bash. Si usa un shell POSIX o cualquier otro shell que pueda usar, p. netcat.
$ nc time.nist.gov 13
56525 13-08-21 23:07:09 50 0 0 55.6 UTC(NIST) *
Ambos comandos consultan el servidor del temporizador en el puerto TCP 13 del Instituto Nacional de Estándares y Tecnología y envían los datos recibidos a la salida estándar.
¹EDITAR: Desde la página de manual de Bash:Bash maneja varios nombres de archivo, especialmente cuando se usan en redirecciones, como se describe en la siguiente tabla:
/dev/tcp/host/port
Si el host es un nombre de host o una dirección de Internet válidos y el puerto es un número de puerto entero o
nombre del servicio, bash intenta abrir una conexión TCP al socket correspondiente.
/dev/udp/host/port
Si el host es un nombre de host o una dirección de Internet válidos y el puerto es un número de puerto entero o
nombre del servicio, bash intenta abrir una conexión UDP al socket correspondiente.
Hay varios servicios NTP disponibles por distribución.
Si desea realizar una sincronización de reloj única :
date -s "$(curl -s --head http://google.com | grep ^Date: | sed 's/Date: //g')"
Establecer la hora del sistema en el reloj en tiempo real del hardware
hwclock -r --utc
hwclock -w --utc
hwclock -r --utc
(Nota:esto funciona bien con Google porque tienen servidores por todas partes)
Si desea ver a qué hora envía el servidor de Google más cercano:
date -d "$(curl -s --head http://google.com | grep ^Date: | sed 's/Date: //g')"
El ntpdate
El comando puede hacer esto con el -q
bandera:
$ ntpdate -q 1.debian.pool.ntp.org
server 88.191.120.99, stratum 3, offset -0.015076, delay 0.06604
server 88.191.235.218, stratum 2, offset -0.000676, delay 0.06592
server 188.165.240.21, stratum 3, offset 0.001191, delay 0.07005
server 91.121.34.166, stratum 2, offset 0.000565, delay 0.06998
22 Aug 00:56:21 ntpdate[31373]: adjust time server 88.191.235.218 offset -0.000676 sec
Desde man ntpdate
:
-q Query only - don't set the clock.