時間を自動設定するシェルスクリプト(プロキシ対応)

 

プロキシ環境下ではNTPが通らず時間合わせができないため、dateコマンドで設定してやる必要がある。

そこで、自動で時間を設定してくれるシェルスクリプトを作成した。

一応、環境に依存せず・正確に時間を設定できるよう考慮している。

JST Clockで「合っています」と表示される程度の精度にはなっているはず。

 

目次

シェルスクリプトが使用するコマンド

  • sudo
  • date
  • curl
  • sed
  • echo

 

準備

wgetのプロキシ設定をしておく。

 

コマンド

wget -q api.matumo.com/sh/setTime.sh -O - | sh

サイトからシェルスクリプトを読み込み実行する。APIサーバーなのは可用性を考慮した結果。

 

保存してから実行しても構わない。シェルスクリプト本体は下記URLを参照…

https://github.com/Matumo/Komono/blob/master/ShellScript/setTime.sh

 

実行結果

# wget -q api.matumo.com/sh/setTime.sh -O - | sh
Get Time 1570989388.970
Lag Time .66
Set Time 1570989389.036
2019年 10月 14日 月曜日 02:56:29 JST

1行目:実行コマンド
2行目:サーバーから取得した時間
3行目:通信の遅延によって生じたと予測される時間差
4行目:実際に設定する時間
5行目:dateコマンドによる時間設定の実行結果

 

おわりに

プロキシを強制する組織は自前のNTPサーバーを用意するくらい義務だと思う。公表していないだけなのかもしれないが、周知されていなければ無いのも当然…

 

更新履歴

2022年3月25日 NICTがAPIを廃止したので worldtimeapi.org を使うように修正

 

記事の評価をお願いします。今後の参考にさせていただきます。
  • 役に立った (0)
  • まあまあだった (0)
  • 理解不能 (0)
  • 役に立たなかった (0)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.