我想知道如何使用 LXDE 启用对 Debian 9 的夏令时支持。我的时区设置为欧洲/罗马。然而,我的时钟提前一小时,考虑到夏令时,它不应该提前一小时。
date
从终端运行我得到:
2019 年欧洲中部时间 2 月 25 日星期一 11:30:40
和date --utc
:
2019 年 2 月 25 日星期一 10:30:40 世界标准时间
正确的 UTC 时间从https://time.is/it/UTC应该:
2019 年 2 月 25 日星期一 09:30:40 世界标准时间
答案1
第一:欧洲冬季没有夏令时,所以你的问题可能不是关于夏令时,而是关于夏令时的区别当地的时间和世界标准时间。
许多 Linux 发行版会在暂停/重启阶段将时间存储在系统内置的实时时钟 (RTC) 中,并在启动时读取它。
下面的 1. 可能不再使用,所以如果不确定,请先尝试 2.。
通常这是通过
hwclock
命令。该命令在第一的用法,将创建文件/etc/adjtime
并在其他值中存储信息:RTC 是否被视为 UTC 或本地时间。 UTC 可能是默认值,因为它一直是 Unix 关心的时间,在内部保留 UTC,在需要时从 UTC 计算本地时间。现在,由于 Windows 至少历史上一直使用本地时间,因此它将本地时间存储在 RTC 上。因此,如果您的用例(双启动)选择了错误的默认值,您可以使用以下命令更改它(在更正时间后):hwclock --systohc --localtime
无论如何都使用该方法
/etc/adjtime
(时钟漂移校正...),最好在更改时间并使用此命令(这将重新创建它)之前删除此文件。今天,
systemd
试图覆盖所有基地,systemd
还提供设置时间的工具。所以也使用的现代等价物/etc/adjtime
应该是:timedatectl --adjust-system-clock set-local-rtc 1
这将重新读取 RTC,但将其视为当地时间并保存设置。
这一切并不妨碍您使用ntpdate
(一发同步)和chronyd
(或者ntpd
或者openntpd
...)将时间与精确的来源同步。