web-dev-qa-db-ja.com

`timedatectl set-timezone`は` / etc / timezone`を更新しません

timedatectl/etc/timezoneタイムゾーンを変更する場合、ただし変更しない場合:

% Sudo timedatectl set-timezone 'Asia/Kuala_Lumpur'
% cat /etc/timezone
Asia/Bangkok

そうでない理由はありますか? (バグ?)

手動で更新した場合/etc/timezone 合わせる timedatectl set-timezone、知っておくべき副作用はありますか?

xfce4 panel clock など、タイムゾーンの変更を検討すべき他の場所はありますか?

2
Tom Hale

timedatectl 更新 /etc/localtime これは、ほとんどのLinuxベースの環境でデフォルトのタイムゾーンを設定するための文書化された方法です(オーバーライドとともに、 TZ環境変数。これは、唯一の POSIXで定義されたタイムゾーンの指定方法 )です。

/etc/timezoneは、ほとんどがDebian固有(派生物を含む)のようです。 Debianシステムでは、timedatectl set-timezone/etc/timezoneを更新します。

/etc/timezoneを手動で更新する場合は、/etc/localtimeシンボリックリンクも更新する必要があります(後者のシンボリックリンクは必ず保持してください)。 /etc/localtimeへの更新は(ほとんどの)デスクトップ環境で考慮されるように見えるため、環境固有のツールを使用してタイムゾーンを更新する必要はありません。

Debianを実行している場合は、dpkg-reconfigure tzdataを使用してデフォルトのタイムゾーンを設定する必要があります。上記のように/etc/localtime/etc/timezoneを更新し、debconfデータベースで選択したタイムゾーンも更新します(tzdataを構成するときにデフォルトとして機能します)。これを行わない場合、tzdataが次に更新されるときに、タイムゾーンがdebconfデータベースの値に復元されます。 dpkg-reconfigure tzdataは、SE Linuxを使用している場合、SE Linuxコンテキストの更新も処理します。

4
Stephen Kitt