我的系统本地时钟几天来一直显示不正确。当我运行时timedatectl status
输出是这样的:
➜ timedatectl status
Local time: Sat 2021-12-25 19:16:57 +0330
Universal time: Sat 2021-12-25 15:46:57 UTC
RTC time: Sat 2021-12-25 15:46:57
Time zone: Asia/Tehran (+0330, +0330)
System clock synchronized: no
NTP service: active
RTC in local TZ: no
世界时间和 RTC 时间正确,但值当地时间是不正确的 !
当地时间运行后修复sudo ntpd -qg
。
但是当我重新启动系统时,一切都会恢复并出错......
我怎么解决这个问题 ?
这是我的系统的更多信息:我使用 arch+xfce4 的输出timedatectl timesync-status
是:
Server: n/a (ur.ntp.srv)
Poll interval: 0 (min: 32s; max 34min 8s)
Packet count: 0
答案1
ur.ntp.srv
不是真实的NTP服务器但看起来更像是插入您选择的 NTP 服务器域的请求。因此,您可能按照一些教程更改了您的配置。在 Arch Linux 中默认systemd-时间同步后备服务器应该可以正常工作,因此无需更改/etc/systemd/timesyncd.conf
。
您可以检查一下pacman -Qii systemd
您是否修改了该文件。如果是这样,您可以使用以下命令来比较未修改的版本:
tar xOf /var/cache/pacman/pkg/systemd-$(pacman -Q systemd | awk '{print $2}')-x86_64.pkg.tar.zst etc/systemd/timesyncd.conf | diff /etc/systemd/timesyncd.conf -
修复 NTP 服务器配置后,您可以启用 systemd-timesyncd sudo timedatectl set-ntp true
(或者您可以启用ntpd
)
答案2
我只是hwclock --systohc
在终端中运行以从系统时钟设置硬件时钟,我的问题就解决了。
根据这个关联根据拱门文档,问题与硬件时钟有关