Macでマニュアルで時刻(時計)を同期させる方法

通常Macでは「日付と時刻」の設定で「日付と時刻を自動的に設定」にチェックを付けているのであれば定期的にタイムサーバーと通信して時刻を自動同期(修正)してくれるが、本記事ではターミナルを用いてマニュアルで時刻を強制同期させる方法を紹介。

NOTE
macOS Big Surでは本記事の手順を行っても正常に時刻が強制同期されない場合があります。

ターミナルでMacの時刻を強制同期させるコマンド

ターミナルで下記コマンドを実行することでタイムサーバー(NTPサーバー)と通信して時刻を強制同期させることが可能。

sudo sntp -sS pool.ntp.org

パスワードを求められたら管理者パスワードを入力してエンターキー。

コマンドが実行されると+/-のオフセット値が表示され、時刻が強制的に同期される。

上記画像では「+0.098082秒(98ミリセカンド)」、時刻がズレているということになる。

冒頭でも書いた通り上記のコマンドはmacOS Big Surでは同期されることもあれば同期されないこともあり、安定していない。

なお、下記コマンドでも同期が可能。

sudo sntp -sS time.apple.com / sudo sntp -sS in.pool.ntp.org

こちらのコマンドもmacOS Big Surでは正常に同期されないことがある。

Kiss of Death, Timeoutと出た場合

時刻を強制同期させた際、「Kiss of Death」や「Timeout」とエラーが出る場合があるがKiss of Deathはクライエントへのリクエストの送信停止要求、Timeoutは時間内にタイムサーバーが応答しなかったためタイムアウトしたことを示す。

通常はサーバーと正常な通信が行われるまでターミナルは自動リトライする。

まとめ

短い記事ではあるが、macOSに限らずコンピュータの時計は内蔵されている水晶発振器の品質や発熱による影響で狂いやすいため、時計の狂いが許されない作業をする場合はマニュアルで時刻を強制同期させる習慣を付けてもいいかもしれない。