mixiユーザー(id:1726250)

2014年11月03日20:50

55 view

[激しく今更]ntpdateはresultを返す

内向けの時刻同期サーバーでntpdateを回して10年余りになるが、
日に数回×2(dmz系、lan系で2台あるので)のcronのレポートをベタに読み飛ばしていた。
(メールは自動定期削除してるけど)
でもよー考えたらフツーこーじゃね?
・10回連続失敗したらレポート。
・直前が失敗かつ成功したらエラーカウンターリセットしいつもの出力。
・メールははしょる分、結果の記録はsyslogへ。調整の結果は後で追えないと。

今までそうしてなかった理由は、return codeが無いと思い込んでいたから。
だってmanに書いてないんだもの。
FreeBSDのもsolarisのもそうだから、「伝統的なバグ」だなきっと。
ふとやってみたらフツーに取れたので、パパッと書いてみた。

#!/bin/sh
/usr/sbin/ntpdate -t 3 ntp1.jst.mfeed.ad.jp > ntpdate_success 2>&1
if [ $? -eq 0 ]; then
rm ntpdate_failed > /dev/null 2>&1
if [ $? -eq 0 ]; then
cat ntpdate_success
fi
else
echo `date "+%Y/%m/%d %H:%M"`" fail." >> ntpdate_failed
CNT=`cat ntpdate_failed | wc -l | sed s/' '//g`
if [ ${CNT} -gt 9 ]; then
echo "over 10 times of ntpdate fail consecutively."
fi
fi
logger -f ntpdate_success


でももう無くなるだよねntpdate。

ヒマなのか?オレw

0 0

コメント

mixiユーザー

ログインしてコメントを確認・投稿する