LoginSignup
18
9

More than 5 years have passed since last update.

日時の設定 - Arch Linuxの最小限インストール直後の作業(2)

Last updated at Posted at 2018-10-25

日時の設定は、インストール時またはArch Linuxの最小限インストールの完了直後に行うべき作業のひとつです。

時刻の設定にあたっては、Arch LinuxなどのOSではシステムクロックとハードウェアクロックという2種類の時計を使われていることが前提知識となります。

システムクロックは、OSが動作している間だけ時を刻みます。OSがブートするときに、ハードウェアクロックの日時をもとにシステムクロックが設定され、OSがシャットダウンするときにはシステムクロックの日時がハードウェアクロックに設定されます。ハードウェアクロックは、小型電池などを電源にして、コンピューターの電源が落ちている間も時を刻みます。

システムクロックは、NTP(Net Time Protocol)によってインターネット上のサーバーと同期することで、日時を正確に保つことができます。

現在の日時の設定は、timedatectlコマンドで確認できます。

[root@archlinux ~]# timedatectl
実行結果
           Local time: Wed 2018-10-24 08:17:31 UTC
       Universal time: Wed 2018-10-24 08:17:31 UTC
         RTC time: Wed 2018-10-24 08:17:32
        Time zone: UTC (UTC, +0000)
System clock synchronized: no
          NTP service: inactive
      RTC in local TZ: no

最小限インストール直後では、タイムゾーンが設定されていないため、日本時間と比べて9時間前にあたるUTC(協定世界時)の日時が表示されます。dateコマンドなどでも、UTCの日時が表示されます。

[root@archlinux ~]# date
実行結果
Wed Oct 24 08:17:50 UTC 2018

また、ハードウェアクロック(RTC: Real Time Clock)をローカルタイムにするかUTCにするかを設定するRTC in local TZは、通常はnoとなります。この設定は変更する必要はありません。Arch Linuxを含めたLinuxではハードウェアクロックはUTCに設定した方がトラブルが少ないとされています。詳細は、systemd環境におけるハードウェアクロック調整などを参照して下さい。

タイムゾーンの設定

timedatectlコマンドで、タイムゾーンを設定できます。

設定できるタイムゾーンの表示

timedatectl list-timezonesコマンドで設定できるタイムゾーンの一覧が表示されます。次のコマンドで、tokyoのタイムゾーンを表示できます。

[root@archlinux ~]# timedatectl list-timezones | grep -i tokyo
実行結果
Asia/Tokyo

タイムゾーンの設定

timedatectl set-timezoneコマンドでタイムゾーンを設定できます。次のコマンドで、タイムゾーンをAsia/Tokyoに設定します。

[root@archlinux ~]# timedatectl set-timezone Asia/Tokyo

設定後、日時の設定を確認します。

[root@archlinux ~]# timedatectl
実行結果
           Local time: Wed 2018-10-24 17:19:15 JST
       Universal time: Wed 2018-10-24 08:19:15 UTC
         RTC time: Wed 2018-10-24 08:19:16
        Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: no
          NTP service: inactive
      RTC in local TZ: no

Local timeがUniversal timeの9時間後になります。dateコマンドなどでは、Local timeが出力されます。

[root@archlinux ~]# date
実行結果
Wed Oct 24 17:19:24 JST 2018

NTPサーバーとの同期の設定

OSがインターネットに接続している場合、次のコマンドでNTPサーバーとの同期を有効にできます。

[root@archlinux ~]# timedatectl set-ntp true

設定後、日時の設定を確認します。

[root@archlinux ~]# timedatectl
実行結果
           Local time: Wed 2018-10-24 17:21:06 JST
       Universal time: Wed 2018-10-24 08:21:06 UTC
         RTC time: Wed 2018-10-24 08:21:07
        Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
          NTP service: active
      RTC in local TZ: no

System clock synchronizedがyesとなり、NTP serviceがactiveとなります。

NTP serviceがactiveとなるまでには少し時間がかかります。inactiveと表示される場合は少し時間が経ってから再度timedatectlコマンドを実行してください。

インターネットに接続していない場合、NTPサーバーとの同期は有効にできません。先に、ネットワーク接続を設定してください。

また、NTPサーバーの設定などはネットワークの設定と一緒に行います。

参考資料

まとめ

今回実行したコマンドをまとめると、次のようになります。

  • timedatectl
  • timedatectl list-timezones
  • timedatectl set-timezone Asia/Tokyo
  • timedatectl set-ntp true
18
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
9