🌊

【Ubuntu】システムの時刻合わせ ~(1)クロックの種類

2024/03/18に公開

はじめに

今回は、chronyを使ってシステムクロックの時刻合わせを行ったときのことを記録しておく.

なぜ時刻合わせするのか?

時計を確認したいだけならスマホで確認すればよい、が、、、
時刻があまりにもずれていると、ソフトウェアがうまく動作しなかったり、ネットワークサービスやHTTPSなどのセキュリティ検証で失敗したりする場合がある.
また、タイムスタンプなどはシステムクロックをもとに押されるので、正しく更新時刻などが表示されないなどの問題もある.地味だが、必ず行っておくこと.

クロックの種類について

クロックには、おおきくわけて「システムクロック」と「ハードウェアクロック」の2種類がある.
それぞれの特徴は下記の通り.

●システムクロック
OSが管理するクロック.OSによって更新される.
また、OSがファイル管理などに利用するのは、システムクロックである.
ただ、OSで管理されているため、OSをシャットダウンすると失われてしまう.そこで、ハードウェアクロックを使って、起動時にハードウェアクロックの時刻をシステムクロックに移してつかうことになる.

システムクロックの確認方法

#システム上の時刻と日付の設定を確認する
timedatectl

上記のコマンドを実行すれば、下記のように現在のシステムクロックが返される

タイムゾーンが設定されていなければ、下記のコマンドで設定できる

#タイムゾーンをAsia/Tokyoに設定
sudo timedatectl set-timezone Asia/Tokyo

●ハードウェアクロック
ハードウェアクロックは、その名前の通り、ハードウェアの上に実装されている時計である.OSは、起動時にハードウェアクロックを参照し、その情報をシステムクロックに移して利用している.
ハードウェアクロックは、マザーボード上の電池で動作するようになっているケースが多い.電池切れには注意が必要.また、Rasberry Piなどシングルボードコンピュータなどにはハードウェアクロックを持たないものもあるので、注意する.

ハードウェアクロックがある場合は下記コマンドでクロックを確認できる.

#ハードウェアクロックの確認方法
sudo hwclock --show

注意点として、システムクロックもハードウェアクロックも、一度設定すればそのまま使い続けられるとは言い難いこと.
なので、多くのサーバなどではNTPを利用して定期的に正確な時刻をネットワーク経由で取得し、これをシステムクロックとハードウェアクロックに反映させる仕組みが採用されている.

まとめ

・クロックの種類を解説した
・ハードウェアクロックとシステムクロックの違いを確認した

次回

・NTPについて解説していく

Discussion