尽管设置了时区,Ubuntu 仍继续显示 UTC 时间

尽管设置了时区,Ubuntu 仍继续显示 UTC 时间

Unity 在当前时区显示系统时间的方式似乎出了问题。我在 Windows 10 主机上的 VirtualBox 中运行 Ubuntu 16.04 客户机。我通过链接到更改了时区/etc/localtime/usr/share/zoneinfo/America/New_York因为sudo timedatectl set-timezone America/New_York没有执行任何操作)。当我执行时timedatectl,它会报告正确的时间和时区:

$ timedatectl
      Local time: Mon 2018-11-12 10:54:13 EST
  Universal time: Mon 2018-11-12 15:54:13 UTC
        RTC time: Mon 2018-11-12 15:54:12
       Time zone: America/New_York (EST, -0500)
 Network time on: yes
NTP synchronized: no
 RTC in local TZ: no

然而,无论出于什么原因,Unity仍然即使重新启动虚拟机后,仍会错误地报告 UTC 时间:

在此处输入图片描述

如何让 Unity 正确显示当地时区的时间?

答案1

您需要重新配置时区数据。

sudo dpkg-reconfigure tzdata

答案2

进入系统设置>时间%日期并设置您的位置(在我的例子中是巴黎)

在此处输入图片描述

选择时钟选项卡并检查自动检测的时间和其他位置的时间。然后选择Choose Location并添加(例如)UTC 或您可能需要的任何其他位置。

在此处输入图片描述

然后,您将能够使用鼠标左侧的时钟选择顶部栏上的时间和日期,并选择您希望显示的时间。

在此处输入图片描述

答案3

命令:设置为本地时间

timedatectl set-local-rtc 1

去检查:

timedatectl | grep local

答案4

问题是你正在使用 NTP 来同步你的时间/数据。使用以下命令禁用它

sudo update-rc.d -f ntp remove

并再次激活你systemd-timesyncd.service就像你的问题之前。

并从以下材料中选择一个替代方案. 在 Ubuntu 16.04 客户机上使用以下命令设置 UTC

VBoxManage setextradata "your-VM-name" "VBoxInternal/Devices/VMMDev/0/Config/UseUTC" 1

最后,再次重启你的 VB!!

希望这可以帮助。

相关内容