CentOSで正確なサーバー時間を取得する方法


この記事では、CentOSディストリビューションで正確なサーバー時間をすばやく取得する方法について説明します。通常、デスクトップ環境でCentOSをインストールした場合は、GUIの「ネットワークタイムプロトコルを有効にする」機能を使って自分の時計をリモートサーバーと同期させるようにコンピュータを設定する最も簡単な方法です。

ただし、上記の機能が期待通りに機能しないことがあります。この記事では、コマンドラインを使って正確なサーバー時間を設定する簡単な方法を紹介します。

これは、NTP経由でシステムの日付と時刻を設定する ntp および ntpdateコマンドラインユーティリティを使用して実行できます。このパッケージがシステムにインストールされていない場合は、以下のコマンドを実行してインストールしてください。

# yum install ntp ntpdate

パッケージをインストールしたら、 ntpd サービスを開始して有効にし、次のようにステータスを表示します。

# systemctl start ntpd
# systemctl enable ntpd
# systemctl status ntpd

次に、下記の ntpdateコマンドを実行して、指定した CentOS NTP サーバーを追加します。ここで、 -u スイッチは ntpdate に送信パケットに非特権ポートを使用するように指示し、 -s は標準出力からのログ出力を有効にします(デフォルト)。システムsyslogファシリティに)。

# ntpdate -u -s 0.centos.pool.ntp.org 1.centos.pool.ntp.org 2.centos.pool.ntp.org

次に、 ntpd デーモンを再起動してCentOS NTPサーバーの日時をローカルの日時と同期させます。

# systemctl restart ntpd

NTP同期が有効になっていて、実際に同期されている場合は、 timedatectlコマンドを使用して確認してください。

# timedatectl

最後に、 hwclockユーティリティを使用して、次のように -w フラグを使用してハードウェアクロックを現在のシステム時刻に設定します。

# hwclock  -w 

詳細については、 ntpdate hwclock のmanページをご覧ください。

# man ntpdate
# man hwclock

以下の関連記事も読んでください。

  1. How to Synchronize Time with NTP Server in Ubuntu
  2. How to Check Timezone in Linux
  3. 5 Useful Commands to Manage File Types and System Time in Linux
  4. How to Set Time, Timezone and Synchronize System Clock Using timedatectl Command

それでおしまい!下記のコメント欄で質問したり、考えを共有したりできます。