systemd環境でsystem timezoneをAsia/Tokyoへ設定する。
適切なコマンドはどれか。
timedatectl set-timezone ZONEはsystemd環境のsystem timezoneをIANA識別子で変更する。
詳細解説
timedatectl set-timezone Asia/Tokyosystemdのtimezone設定を指定識別子へ変更する。
正しい。timedatectlのset-timezone subcommandへAsia/Tokyoを渡し、system timezoneを構成する。
timedatectl timezone=Asia/Tokyotimedatectlのset-timezone subcommand形式ではない。
誤り。timedatectlはtimezone=という代入引数ではなく、set-timezone ZONEのsubcommand形式を使う。
date --timezone Asia/Tokyodateでsystem timezone設定を永続変更する形式ではない。
誤り。date --timezoneというsystem設定用interfaceではなく、一時表示ならTZ環境変数、永続設定ならtimezone管理toolを使う。
locale set TZ Asia/Tokyolocale commandはsystem timezoneの設定変更interfaceではない。
誤り。localeはLANGやLC_*の照会を行い、TZ識別子をsystem設定へ書き込まない。
実際に確かめる
一時的な検証環境で実行できる例です。
timedatectl --help 2>&1 | grep 'set-timezone' | head -n 1期待される結果
set-timezone ZONEのhelp行理解のポイント
- set-timezone subcommand
- zoneinfo識別子を指定
- system全体の変更
確認時の注意
- 確認環境: systemd timedatectl helpの読取のみ
- 実際のset-timezoneは状態変更になるためhelpだけを検証する。
基礎のおさらい
権限と影響
system timezone変更は全userとserviceのlocal time表示へ影響するため、管理権限と運用確認が必要になる。
UTC clockとの違い
timezoneは表示・変換ruleであり、system clockの基準時刻やNTP同期設定とは別に管理する。