CentOS7でタイムゾーンを設定する方法

新しいサーバーを立ち上げていると、タイムゾーンを設定しなければならないことが非常に多くあります。

サーバーで適切なタイムゾーンを設定することは、多くの人が忘れていることです。 不適切なタイムゾーンを設定すると、サーバーのレポートやログに影響を及ぼします。

CentOSベースのVPSに正しいタイムゾーンを設定することは、タイムスタンプを正確に記録するために重要であり、さもなければ、インシデントまたはエラーログに間違った日付とタイムスタンプを記してしまうかもしれません。

ロギングとレポートとは別に、非常に重要な要因は、crontabと自動ジョブに設定する時間です。 不適切なタイムゾーンを設定すると、実際に意図した時間とは異なる時間にプロセスが実行されることになります。 幸運にも、CentOS 7 でタイムゾーンを設定したい場合、いくつかの簡単なコマンドを使用するだけで済みます!

全体として、適切なタイムゾーンを設定しなくても運用は壊れませんが、確実にワークフローを改善し、ログの不明瞭さを容易に防ぐことができます。

それでは、CentOS 7でタイムゾーンを設定する方法をご紹介します。

CentOS7で設定したタイムゾーンを確認する方法

まず、VPSサーバーにSSHでアクセスする必要があります。 問題がある場合は、PuTTYのチュートリアルを参照してください!

現在のタイムゾーンは、以下のようにdateコマンドを使用して確認できます:

date

これは、次の形式で時間を出力します:

Fri Mar 15 14:52:20 UTC 2019

あるいは、timedatectlコマンドを使用することも可能です。 このコマンドは次のことができます:

  • 日付とタイムスタンプを確認する
  • 日付と時間を変更する
  • システムのタイムゾーンを設定する
  • リモートサーバーに基づく時計の自動同期を有効にする

基本コマンドはこのような感じです。

timedatectl

出力は以下のようになります:

これにはローカルタイム、ユニバーサルタイム、およびタイムゾーンなどの情報が含まれます。

How to List Timezones in CentOS 7

現在のタイムゾーンを表示したら、利用できるタイムゾーンのオプションをすべて一覧表示したい場合があります。 以下のコマンドを使用すると、すべてのタイムゾーン オプションを一覧表示できます:

timedatectl list-timezones

すべてのタイムゾーンをアルファベット順に表示する長いリストが表示されます。 grepのパターンを使ってフィルターを追加することで、検索を絞り込むことができます。 そのような例の1つは、次のとおりです。

timedatectl list-timezones | grep Pacific

How to Set Timezone in CentOS 7

タイムゾーンのリストが得られたら、好みのものを設定することができます。 CentOS 7でタイムゾーンを設定するには、:

timedatectl set-timezone America/Chicago

上記のコマンドでタイムゾーンを適宜置き換えてください。 こちらでは、特定の日付と時刻を設定することもできます。 例えば、時刻をMar-16-2019、現在時刻を09:20:00と設定したい場合は、次のようにします:

timedatectl set-time '2019-03-16 09:20:00'

これらの変更を行った後、timedatectlを使ってタイムゾーン詳細を再度確認することができます。

CentOS7でハードウェアクロックを設定する方法

ハードウェアクロックは、Linuxカーネルで管理されているシステムクロックとは異なります。 これは BIOS クロックとも呼ばれます。 ハードウェアクロックは、システムがシャットダウンされると有効になります。 Linuxコマンドを使用すると、ハードウェアクロックを設定することができます。

ハードウェアクロックがローカルタイムゾーンに設定されているかどうかを確認するには、以下のコマンドを使用します:

timedatectl | grep local

この場合、以下のような出力が得られますが、これはハードウェアクロックにタイムゾーンが指定されていないことを意味します:

RTC in local TZ: no

次に、以下のコマンドを使ってハードウェアクロックがローカルタイムゾーンに設定できることを確認します。

timedatectl set-local-rtc 1

変更を元に戻すには、次のコマンドを使用します。

timedatectl set-local-rtc 0

How to Perform Clock Synchronization on CentOS 7

Network Time Protocol (NTP) はインターネットプロトコルであり、異なるコンピュータ上のシステム時計を同期するためによく使用されます。 timedatectl コマンドは、NTP を使用してリモート サーバーと自動的に同期するようにシステムのタイムゾーンを設定できます。

これを有効にするには、まず、システムに NTP がインストールされている必要があります。 リモートNTPサーバーとの同期を開始するには、次のコマンドを使用します:

timedatectl set-ntp true

これらの変更を元に戻す場合は、次のコマンドを使用します。

timedatectl set-ntp false

Conclusion

ここでは、CentOS 7でタイムゾーンを設定する方法と、システム時刻、日付、ハードウェアクロックの時刻を設定し、NTPを使用してシステムを同期する方法について見てきました。 正しいタイムゾーンを設定することは、正しいロギングや自動処理などに重要です!

CentOS7でタイムゾーンを設定するのは簡単なことです。 そして、そうです、より多くのオプションについて学ぶには、いつでも timedatectl コマンドのマニュアルページを確認できます。

This post was last modified on January 22, 2020 12:38 pm

コメントを残す

メールアドレスが公開されることはありません。