SVX日記
2016-12-30(Fri) うるう秒を回避する
んが、毎度のようにLinuxOSが、何かと(パニック、ストール、CPU100%などを)やらかしてしまうのも事実であり、GoogleやAmazonが前後数時間の1秒を微妙に延ばして回避するというのは、もっともクールな回避方法だったりする。
そういう自分はどうするのかというと、単にntpサーバを止めることで、対処するのであった。問題は、うるう秒の発生「当日(厳密には時差の関係で12月31日の午前9時以降)」に、上位のntpサーバから「うるう秒があるよ」というLIビットが通知され、それを受け取ったntpサーバがLinux kernelに通知され、kernelが誤動作することで起こる。ならば、最初からLIビットを受け取らなければいいのだ。
その場合、正月明けにntpサーバを再起動するまで、時刻が1秒進んだ状態となり、再起動後には、ポンと1秒戻ることになるが、ウチでは1秒の狂いや1秒の時刻戻りが影響するような微妙なアプリは走らせていないので、それでいいのである。
さらに自宅のntpサーバも停止しなければならない……って、自宅に何台あるんだ? デスクトップPC、サーバほかの物理マシン以外に、OpenStack上の仮想マシン、ラズベリーパイ……あ、借りてるVPSもあったっけ。のべ11台。そのほかにもありそうだが、まぁいいや。
#ssh root@localhost systemctl stop chronyd
#ssh root@******* systemctl stop ntpd.service
#ssh root@******** systemctl stop ntpd.service
#ssh root@****** systemctl stop chronyd
#ssh root@***** systemctl stop chronyd
#ssh root@**** systemctl stop chronyd
#ssh root@**** systemctl stop chronyd
#ssh root@******** systemctl stop chronyd
#ssh root@********* systemctl stop chronyd
#ssh root@******* systemctl stop chronyd
#ssh root@******* systemctl stop chronyd
#ssh root@localhost systemctl start chronyd
#ssh root@******* systemctl start ntpd.service
#ssh root@******** systemctl start ntpd.service
#ssh root@****** systemctl start chronyd
#ssh root@***** systemctl start chronyd
#ssh root@**** systemctl start chronyd
#ssh root@**** systemctl start chronyd
#ssh root@******** systemctl start chronyd
#ssh root@********* systemctl start chronyd
#ssh root@******* systemctl start chronyd
#ssh root@******* systemctl start chronyd
ssh root@localhost chronyc sources
ssh root@******* ntpq -p
ssh root@******** ntpq -p
ssh root@****** chronyc sources
ssh root@***** chronyc sources
ssh root@**** chronyc sources
ssh root@**** chronyc sources
ssh root@******** chronyc sources
ssh root@********* chronyc sources
ssh root@******* chronyc sources
ssh root@******* chronyc sources