正確なタイミングは、最新のソフトウェア展開の重要な要素になっています。ログが正しい順序で記録されるようにする場合でも、データベースの更新を正しく適用する場合でも、同期がとれていないと、エラー、データの破損、その他のデバッグが難しい問題が発生する可能性があります。
Ubuntu 18.04には時間同期が組み込まれており、デフォルトでsystemdのtimesyncdサービスによってアクティブ化されます。この記事では、いくつかの基本的な時間関連コマンドを紹介し、timesyncdがアクティブであることを確認し、バックアップネットワークタイムサービスをインストールする方法を学習します。
このチュートリアルを開始する前に、sudo権限を持つ非rootユーザーのUbuntu18.04サーバーが必要です。サーバーをお持ちでない学生は、[こちら](https://cloud.tencent.com/product/cvm?from=10680)から購入できますが、個人的には、無料のTencent Cloud [Developer Lab](https://cloud.tencent.com/developer/labs?from=10680)を使用して実験し、[サーバーを購入]( https://cloud.tencent.com/product/cvm?from=10680)。
サーバー上の時刻を見つけるための最も基本的なコマンドは date
です。すべてのユーザーがこのコマンドを入力して、日付と時刻を印刷できます。
date
Tue Jul 1014:48:52 UTC 2018
上記の出力に示すように、ほとんどの場合、サーバーはデフォルトで* UTC タイムゾーンになります。 UTCは、経度が0度の時間である Coordinated Universal Time *です。インフラストラクチャが複数のタイムゾーンにまたがっている場合、ユニバーサルタイムを一貫して使用すると、混乱を減らすことができます。
要件が異なり、タイムゾーンを変更する必要がある場合は、 timedatectl
コマンドを使用してこれを行うことができます。
まず、利用可能なタイムゾーンをリストします。
timedatectl list-timezones
タイムゾーンのリストが画面に印刷されます。 SPACE
を押してページダウンし、 b
を押してページアップできます。正しいタイムゾーンを見つけたら、それを書き留め、「q」と入力してリストを終了します。
次に、タイムゾーンを timedatectl set-timezone
で設定します。以下で強調表示されている部分を、リストで見つけたタイムゾーンに置き換えてください。変更するには、 timedatectl
の sudo
を使用する必要があります。
sudo timedatectl set-timezone America/New_York
date
を再度実行して、変更を確認できます。
date
Tue Jul 1010:50:53 EDT 2018
タイムゾーンの省略形は、新しく選択した値を反映している必要があります。
クロックをチェックしてタイムゾーンを設定する方法がわかったので、時間が正しく同期されていることを確認しましょう。
最近まで、ほとんどのネットワーク時間同期は* Network Time Protocol Daemon *またはntpdによって処理されていました。このサービスは、他のNTPサーバープールに接続して、継続的かつ正確な時間更新を提供します。
Ubuntuのデフォルトのインストールでは、ntpdではなくtimesyncdが使用されるようになりました。 timesyncdは同じタイムサーバーに接続し、ほぼ同じように機能しますが、より軽量で、systemdおよびUbuntuの低レベルの作業とより統合されています。
パラメータなしで timedatectl
を実行することにより、timesyncdのステータスを照会できます。この場合、 sudo
権限を使用する必要はありません。
timedatectl
Local time: Tue 2018-07-1010:54:12 EDT
Universal time: Tue 2018-07-1014:54:12 UTC
RTC time: Tue 2018-07-1014:54:12
Time zone: America/New_York(EDT,-0400)
System clock synchronized: yes
systemd-timesyncd.service active: yes
RTC in local TZ: no
これにより、現地時間、ユニバーサル時間(UTCタイムゾーンから切り替えなかった場合は現地時間と同じになる場合があります)、および一部のネットワーク時間ステータス情報が出力されます。 「システムクロック同期:yes」は、時刻が正常に同期されたことを示し、「systemd-timesyncd.service active:yes」は、timesyncdが有効で実行されていることを示します。
timesyncdがアクティブ化されていない場合は、timedatectlを使用してオンにします。
sudo timedatectl set-ntp on
timedatectl
を再度実行して、ネットワークの時間ステータスを確認します。実際の同期が行われるまでに1分かかる場合がありますが、最終的には「ネットワーク時間オン:」と「NTP同期:」の両方が「はい」になります。
時間同期はほとんどの目的に適していますが、わずかな時間の乱れにも非常に敏感な一部のアプリケーションは、より高度な技術を使用してシステムを段階的かつ継続的に維持するため、ntpdの方が適しています。時間の通常の操作。
ntpdをインストールする前に、timesyncdをオフにする必要があります。
sudo timedatectl set-ntp no
timesyncdが閉じていることを確認します。
timedatectl
出力で systemd-timesyncd.service active:no
を探します。これは、 timesyncd
が停止したことを意味します。これで、 apt
を使用して ntp
パッケージをインストールできます。
sudo apt update
sudo apt install ntp
ntpdは、インストール後に自動的に起動します。 ntpdのステータス情報を照会して、すべてが正常であることを確認できます。
ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================0. ubuntu.pool.n .POOL.16 p -6400.0000.0000.0001.ubuntu.pool.n .POOL.16 p -6400.0000.0000.0002.ubuntu.pool.n .POOL.16 p -6400.0000.0000.0003.ubuntu.pool.n .POOL.16 p -6400.0000.0000.000
ntp.ubuntu.com .POOL.16 p -6400.0000.0000.000+ec2-52-0-56-137216.239.35.02 u 166417.872-2.1371.485+66.220.10.2129.6.15.302 u 1264165.2043.7402.686+block.steinhoff 209.51.161.2382 u 1164133.3641.7103.586+eterna.binary.n 216.229.0.503 u 1164135.3302.8212.839+2604:a880:800:1209.51.161.2382 u 146410.3940.3862.462+ec2-52-6-160-3.130.207.244.2402 u 116418.1502.0503.053+mx.danb.email 127.67.113.922 u 1364163.8681.5392.240*hydrogen.consta 129.6.15.282 u 126412.9891.7552.563+ntp-3.jonlight.127.67.113.922 u 1064164.5612.1223.593+undef.us 45.33.84.2083 u 1264133.5081.6313.647+ntp-3.jonlight.127.67.113.922 u 864164.2532.6453.1742001:67c:1560:8145.238.203.142 u 2264171.155-1.0590.000+test.diarizer.c 216.239.35.42 u 1164164.3784.6483.2442001:67c:1560:8145.238.203.142 u 1864170.744-0.9640.000
alphyn.canonica 132.246.11.2312 u 176417.973-0.1700.000+vps5.ctyme.com 216.218.254.2022 u 1064165.8741.9022.608
ntpq
は、ntpdのクエリツールです。 -p
フラグには、NTPDが接続されているNTPサーバー(または** p ** EERS)に関する情報が必要です。出力は少し異なりますが、デフォルトのUbuntuプールサーバーと他のいくつかのサーバーがリストされているはずです。 ntpdが接続を確立するのに数分かかる場合があることに注意してください。
この記事では、システム時間を表示する方法、タイムゾーンを変更する方法、Ubuntuのデフォルトの時間同期を使用する方法、およびntpdをインストールする方法を示しました。ここで説明したよりも複雑なタイミング要件がある場合は、[公式NTPドキュメント](https://www.eecis.udel.edu/~mills/ntp/html/index.html)を参照できます。また、グローバルボランティアである[NTPプールプロジェクト](http://www.pool.ntp.org/)も表示できます。チームは、世界のほとんどのNTPインフラストラクチャを提供します。
時間同期関連のチュートリアルの設定の詳細については、[Tencent Cloud + Community](https://cloud.tencent.com/developer?from=10680)にアクセスして詳細を確認してください。
参照:「Ubuntu18.04で時刻同期を設定する方法」
Recommended Posts