
Procurando um roteiro para(1)verifique o status do NTP e(2)se estiver dentro de +/- 1 segundo de um determinado servidor de horário (por exemplo123.456.789.10).(3)Além disso, a hora do sistema deve ser verificada para ver se o fuso horário está definido corretamente (por exemplo,PST)
Aqui está o que tenho até agora, verificando o status do NTP:
#!/bin/bash
if [[ ! -x /usr/bin/ntpstat ]]
then
echo "ntpstat is NOT installed: please install it"
exit 3
res=$(/usr/bin/ntpstat)
rc=$?
case $rc in
0 )
echo "clocks are synchronized"
;;
1 )
echo "WARNING: clocks are NOT synchronized"
;;
2 )
echo "CRITICAL: NTPD IS DOWN -- NO STATUS"
;;
esac
Responder1
Eu uso ntpq
para isso.
Aqui estão alguns trechos e pseudocódigo.
Primeiro, calcule o deslocamento e armazene-o em uma var:
ntp_offset=$(ntpq -pn | \
/usr/bin/awk 'BEGIN { offset=1000 } $1 ~ /\*/ { offset=$9 } END { print offset }')
Servidor OK quando: ntp_offset <1000
Servidor não sincronizado quando: ntp_offset >= 1000
a verificação de que o ntpd está inativo pode ser feita com abordagens diferentes, dependendo do seu sistema operacional. Por exemplo, use
service ntpd status
em red hat, centos e similares, e depois verifique o status do resultado na$?
variável.