如何解决 Windows 和 Manjaro 双系统时间不一致

解决办法

我这边是 Manjaro Linux 以它为例来说修复方法。大致上有两种思路,一种是让 Windows 使用 UTC 时间;另一种则是让 Linux 使用 localtime

让 Linux 使用本地时间

委屈以下 Linux 吧,Manjaro 或 Arch 可以在终端中输入:

sudo timedatectl set-local-rtc true
  • 1

让 Windows 使用 UTC

这需要修改注册表,而且不能开启时间同步,以免我们的设置被重置。由于我的 Windows 是主力系统,因此没有尝试下面的方法,有效性有待验证

# 以管理员身份使用运行
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
# 以上方法无效或64位系统:
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_QWORD /f

Manjaro系统时间同步服务器设置方法

 https://www.bdpnt.com/kepu/4091.html

1、设置系统时间和时区

在Manjaro系统中,您可以使用命令行界面或者图形化界面来设置系统时间和时区。在命令行界面中,您可以使用“timedatectl”命令来设置系统时间和时区,如下所示:

 

  sudo timedatectl set-time YYYY-MM-DD HH:MM:SS

  sudo timedatectl set-timezone Asia/Shanghai

  如果您想使用图形化界面来设置系统时间和时区,可以通过设置桌面环境的“Date and Time”应用程序来完成。在这个应用程序中,您可以手动调整时间和时区,或者使用网络来同步时间和时区。

  在设置好系统时间和时区之后,您可以使用一些命令来查看当前系统时间和时区的设置,如下所示:

  date

  timedatectl status

  

2、使用NTP协议同步时间

NTP是一种用于同步时间的协议,它可以从互联网中的时间服务器上获取准确的时间,并将其应用到本地系统中。对于Manjaro系统来说,您可以使用命令行界面或者图形化界面来配置NTP协议的设置。在命令行界面中,您可以使用“timedatectl”命令来设置NTP服务器,如下所示:

 

  sudo timedatectl set-ntp true

  sudo timedatectl set-timezone Asia/Shanghai

  在图形化界面中,您可以使用应用程序“Date and Time”的设置界面来向系统添加NTP服务器的地址。

  成功配置NTP服务器之后,您可以使用以下命令来测试其是否有效:

  ntpdate -q time.nist.gov

  如果一切正常,您将看到时间服务器返回的响应。

  

3、配置本地时间服务器

对于网络环境不稳定的用户,如果使用互联网中的时间服务器进行时间同步可能会存在一些问题,此时您可以考虑使用本地时间服务器来同步时间。在Manjaro系统中,您可以使用“chrony”作为本地时间服务器。要配置chrony,您可以使用以下命令:

 

  sudo pacman -S chrony

  然后,您需要编辑chrony.conf文件,以添加时间服务器的地址。在文件中,您可以添加以下内容:

  server time.nist.gov iburst

  在添加时间服务器地址之后,您需要重启chrony服务,以使其生效:

  sudo systemctl restart chrony.service

  最后,您可以使用以下命令来测试chrony的是否起作用:

  chronyc sources

  这个命令会显示服务器的源和目标,如果使用的是本地时间服务器,您将看到一个指针指向其它服务器的本地IP地址。

  

4、设置时间同步的优先级

在Linux中,您可以设置时间同步的优先级,以使系统产生更准确的时间。在Manjaro系统中,您可以编辑/etc/systemd/timesyncd.conf文件来设置时间同步的优先级。在文件中,您可以添加以下内容:

 

  [Time]

  FallbackNTP=0.manjaro.pool.ntp.org 1.manjaro.pool.ntp.org

  RootDistanceMaxSec=5

  您可以手动更改“FallbackNTP”选项,以添加您自己喜欢的NTP服务器地址。然后,保存文件并重启timesyncd服务以使其生效:

  sudo systemctl restart systemd-timesyncd.service


sudo pacman -S ntp && sudo timedatectl set-ntp true


系统自带的可能就是 ntp,而且不好用,换成 openntp 就好了
安装 openntp 解决了问题
sudo pacman -S openntpd
systemctl enable openntpd

 

https://wiki.archlinuxcn.org/wiki/%E7%B3%BB%E7%BB%9F%E6%97%B6%E9%97%B4

 
posted @ 2024-09-10 09:54  petercao  阅读(110)  评论(0编辑  收藏  举报