システムの日時設定の構成

システム時間はPOSIX時間標準に基づいています。ここで、時間は1970年1月1日木曜日、00:00:00協定世界時(UTC)から経過した秒数として測定されます。1日は86400秒として定義され、うるう秒は自動的に減算されます。

システムの日時表現は、特定のタイムゾーンに一致するように設定できます。使用可能なタイムゾーンをリストするには、次を実行します:

timedatectl list-timezones

使用可能なタイムゾーンから返された値に一致するようにシステム・タイムゾーンを設定するには、次を実行します。

timedatectl set-timezone America/Los_Angeles

America/Los_Angelesを有効なタイムゾーン・エントリに置き換えます。

このコマンドは、/usr/share/zoneinfo/内の適切なゾーン情報ファイルを指すように、/etc/localtimeからのシンボリック・リンクを設定します。この設定は、即座に反映されます。/etc/localtimeを使用して現在のシステム・タイムゾーンを検出する長時間実行プロセスには、プロセスが再起動されるまでシステム・タイムゾーンの変更が検出されないことがあります。

タイムゾーンは、主に表示目的またはユーザー入力の処理に使用されます。タイムゾーンを変更しても、システム・クロックの時間は変更されません。TZ環境変数を設定することで、任意のコンソールでシステム時間の表示を変更できます。たとえば、東京の現在の時間を確認するには、次を実行します。

TZ="Asia/Tokyo" date

timedatectlコマンドを単独で実行することで、システムの現在の日時構成を確認できます:

timedatectl
               Local time: Wed 2021-07-17 00:50:58 EDT                                                                                                                                                                                                     
           Universal time: Wed 2021-07-17 04:50:58 UTC                                                                                                                                                                                                     
                 RTC time: Wed 2021-07-17 04:50:55                                                                                                                                                                                                         
                Time zone: America/New_York (EDT, -0400)                                                                                                                                                                                                   
System clock synchronized: yes                                                                                                                                                                                                                             
              NTP service: active                                                                                                                                                                                                                          
          RTC in local TZ: no                              

システム時間を手動で設定するには、timedatectl set-timeコマンドを使用します:

timedatectl set-time "2021-07-17 01:59:59"

このコマンドは、現在設定されているシステム・タイムゾーンを想定して指定された時間に基づいて現在のシステム時間を設定します。このコマンドは、システムのリアル・タイム・クロック(RTC)も更新します。

ヒント:

ツールを使用して日付、時間、ロケールなどのシステム・パラメータを構成する方法を説明するハンズオン・チュートリアルについては、Oracle Linuxでのインストールのローカライズ方法についての学習を参照してください。

正確な時間管理のためにネットワーク時間の同期を使用するようにシステムを構成することを検討してください。ネットワーク時間の同期の使用は、特に、高可用性を設定する場合、またはネットワークベースのファイル・システムを使用する場合に重要です。

NTPを使用するネットワーク・タイム・サービスの構成の詳細は、『Oracle Linux 8: ネットワークの設定』を参照してください。

ヒント:

chronydサービスの設定および構成に関するハンズオン・チュートリアルについては、Oracle LinuxでのChronyの構成を参照してください。

NTPサービスを構成する場合は、次のコマンドを実行してNTPを有効にします。

timedatectl set-ntp true

このコマンドは、chronydサービスを有効化および起動します(使用可能な場合)。