ウェブサイト検索

Linux でタイムゾーンを設定し、NTP でサーバー時刻を同期する方法


この記事の読者は、NTP とは何か、サーバーの時刻と日付を同期する方法、Linux でタイムゾーンを設定する方法を学びます。

NTP (ネットワーク タイム プロトコル) を使用すると、システムの日付と時刻を簡単に正確に保つことができます。これにより、ネットワーク接続を通じてコンピュータの時計を同期し、正確な時間を保つことができます。クライアントはリモート サーバーから現在時刻を要求し、それを使用してクロックを設定します。

systemd を使用して NTP と時刻を同期する方法

systemd-timesyncd

つまり、NTP クライアントがすでにプレインストールされており、本格的な NTPD デーモンを実行する必要がなくなりました。代わりに、組み込みの systemd-timesyncd が主要な時刻同期ジョブを適切に実行できます。

timedatectl を介して時刻と時刻設定の現在のステータスを確認するには、次のコマンドを実行します。

timedatectl status

出力に「NTP service: active」と表示される場合、コンピュータの時計は NTP を通じて自動的に調整されています。

NTP service: inactive」と表示された場合は、次のコマンドを実行して NTP 時刻同期を有効にします。

timedatectl set-ntp true

やるべきことはそれだけです。それが完了したら、すべてが所定の位置に配置され、時間が正しく記録される必要があります。

また、timesyncd 自体は通常のサービスであるため、その状態をより詳細に確認することもできます。

systemctl status systemd-timesyncd

無効になっている場合は、次のように systemd-timesyncd サービスを開始してアクティブにすることができます。

systemctl start systemd-timesyncd
systemctl enable systemd-timesyncd

Linux でタイムゾーンを設定/変更する方法

タイム ゾーンを変更する前に、timedatectl の使用を開始して、現在設定されているタイム ゾーンを確認します。

timedatectl

次に、使用可能なタイム ゾーンをすべてリストして、システムで使用するタイム ゾーンの正確な名前を確認しましょう。

timedatectl list-timezones

タイムゾーンのリストは非常に広範囲に及びます。ただし、まず、自分の場所の正式なタイムゾーン名を知っておく必要があります。

タイムゾーンを見つけるもう 1 つの方法は、/usr/share/zoneinfo/ ディレクトリの内容を一覧表示する (ls -l) ことです。希望のタイムゾーン (/usr/share/zoneinfo/ゾーン/サブゾーン) を見つけます。ゾーン/サブゾーン は、あなたのタイムゾーンです。 America/New_YorkEurope/ParisAsia/Bangkok などの選択。あなたはそのアイデアを理解しました。

Linux システムのタイムゾーンをニューヨークに設定するとします。コマンドは次のようになります。

timedatectl set-timezone America/New_York

このコマンドは、/usr/share/zoneinfo/ から /etc/localtime まで、選択したタイム ゾーンのシンボリック リンクを作成します。

さらに、上記のコマンドをスキップして、このシンボリック リンクを手動で作成して、同じ結果を得ることができます。

ln -s /usr/share/zoneinfo/America/New_York /etc/localtime

必要な場合は、timedatectl コマンドのマニュアル ページを参照してください。

関連記事: