我原以为timedatectl
在更改时区时会更新/etc/timezone
,但没有:
% sudo timedatectl set-timezone 'Asia/Kuala_Lumpur'
% cat /etc/timezone
Asia/Bangkok
有什么原因不这样吗?(窃听器?)
如果我手动更新/etc/timezone
以匹配timedatectl set-timezone
,有什么副作用我应该知道吗?
还有什么地方我应该考虑改变时区(如xfce4 4面板时钟 )?
发布于 2018-06-25 09:52:56
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数据库中的值。如果使用SE,dpkg-reconfigure tzdata
还负责更新SE上下文。
发布于 2018-06-25 09:55:43
/etc/timezone
在UNIX上是完全可选的。任何官方系统软件都不使用它。
您所想到的时区通常是通过init(1)
通过login
继承到shell的。
从文档中,/etc/timezone
旨在包含与主机或域名称相关的时区名称。
https://unix.stackexchange.com/questions/451709
复制相似问题