[chrony][自分用メモ] chronyでネットワークに問題がないのに、offlineでサービスが起動してしまう問題を対処してみた。

AIX、UNIX、Linux

自宅の時刻合わせ環境ではntpdとchronyを併用しているのですが、そのうちの一台、chronyを導入しているサーバで何故かネットワークに問題が無いのに、offline状態で起動してくる事に気が付きました。

作業環境:

% lsb_release -d
Description:    Ubuntu 13.10

手順

% sudo service  chrony  restart
Restarting time daemon: Starting /usr/sbin/chronyd...
chronyd is running and offline.

chrony.confを見なおしても問題ないようにみえるので悩んでいたところ、initファイルの以下の部分が気になりました。

# putonline ()
{ # Do we have a default route?  If so put chronyd online.
if timelimit -q -s9 -t5 -- netstat -rn 2>/dev/null | grep -q '0\.0\.0\.0'
then
sleep 2  # Chronyd can take a while to start.
KEY=$(awk '$1 ~ /^commandkey$/ { print $2; exit}' /etc/chrony/chrony.conf)
PASSWORD=`awk '$1 ~ /^'$KEY'$/ {print $2; exit}' /etc/chrony/chrony.keys`
# Make sure chronyc can't hang us up.
if timelimit -q -s9 -t5 -- /usr/bin/chronyc > /dev/null << EOF

processへのtimelimitを設定する部分でwarntimeを設定する部分が、5秒になっていることでした。
manによると、warnsigを送信する前に設定されるプロセスの最大実行時間のようです。

-t warntime
Specify the maximum execution time of the process in seconds before sending
warnsig. Defaults to 3600 seconds.

こちらが短すぎると思い(デフォルトでは3600秒ですし)、60へ変更したところ問題なくonlineで起動してくることを確認しました。

% sudo service chrony start
Starting /usr/sbin/chronyd...
chronyd is running and online.

ということで自分用メモでした。この件で困っている方がいらっしゃいましたら少しでも助けになれば幸いです。

この記事を書いた人

kometchtech

うつ病を患いながら、IT業界の末席にいるおっさんエンジニア。科学計算をしたことがないのに、HPC分野にお邪魔している。興味のある分野で学習したことをblogにまとめつつ、うつ病の経過症状のメモも置いておく日々。じつはRouterboard User Group JPの中の人でもある。 Amazon欲しいものリスト / Arm板を恵んでくれる人募集中

kometchtechをフォローする
タイトルとURLをコピーしました