구성할 bash 스크립트가 있습니다.chrony.conf
스크립트는 핑이 괜찮은지 확인합니다 ntp1
( ntp2
ntp 서버).
그런 다음 스크립트는 ntp 서버를 삽입합니다 /etc/chrony.conf
(ping이 성공한 경우에만).
Bash 스크립트의 예:
ping -c 1 ntp1
if [[ $? -eq 0 ]];then
echo "server ntp1 iburst" >> /etc/chrony.conf
else
echo "sorry so much but no ping to ntp1 server , /etc/chrony.conf will not configured "
exit 1
fi
ping -c 1 ntp2
if [[ $? -eq 0 ]];then
echo "server ntp2 iburst" >> /etc/chrony.conf
else
echo "sorry so much but no ping to ntp2 server , /etc/chrony.conf will not configured "
exit 1
fi
문제는 때때로 사용자가 비활성화 ping
하거나icmp
그래서 그 경우에는핑을 확인하는 시나리오는 관련이 없으며 라인을 추가할 수 없습니다./etc/chrony.conf
그래서 우리는 방법을 알고 싶습니다.시험그리고 추가할 ntp1
서버ntp2
ntp1및 ntp2
크로니 구성
예를 들어, ntp 서버로 표시되지 않는 경우 ntp1
해당 ntp2
서버를 chrony 구성에 추가하지 않습니다.
답변1
도구를 사용하여 NTP 서버를 확인하세요 ntpdate
.
이 같은:
OP=$(ntpdate -q ntp1)
OP에 올바른 날짜 데이터가 포함되어 있으면 ntp1이 작동하는 것입니다. 그렇지 않으면 ntp2를 시도하십시오.
인용하다:https://www.tunnelsup.com/how-to-test-an-ntp-server-using-ntpdate/
산출:
$ ntpdate -q pool.ntp.org
server 64.71.128.26, stratum 2, offset 1.552116, delay 0.06792
server 104.236.236.188, stratum 2, offset 1.556884, delay 0.11574
server 108.59.2.24, stratum 2, offset 1.569006, delay 0.11952
server 209.114.111.1, stratum 2, offset 1.542965, delay 0.11389
19 Apr 21:30:06 ntpdate[32062]: step time server 64.71.128.26 offset 1.552116 sec
스크립트에 대한 간단한 설명:
ntp1이 응답하지 않을 때 로그를 남기고 종료하지 말고 ntp2를 계속 처리해야 합니다.
둘 다 응답하지 않는 경우에만 계속하고 싶지 않을 것입니다.