大家有没有遇到这样的问题,linux 的设置的时间如下:
Local time: Sat 2019-07-13 16:50:42 CST
Universal time: Sat 2019-07-13 08:50:42 UTC
RTC time: Sat 2019-07-13 08:50:42
Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
而用 deepin 运行的 QQ 的显示的时间是 UTC 时间. 时区不对.
1
BingoXuan 2019-07-13 17:03:21 +08:00 via Android
Windows 时间会认为当前时间是当前市区的时间,市时区设置为东八区,时钟的 8 时就是东八区当地时间八时。而 Linux 是当前时间是 utc 时间,加上时区的 offser,也就是时钟是 8 时,加上东八区+8 小时的偏移,当前时间就是东八区当地时间 16 时。
个人觉得 wine 遵循了 Windows 这一设置导致的 |
2
niushiqi 2019-07-13 17:18:11 +08:00 via iPhone
我们 mysql 数据库时间我都看不懂,不是 utc 也不是北京时间,后来搜了一下貌似是世界时间 a 开头那个,不知道谁设的.
|
3
Buges 2019-07-13 17:21:52 +08:00 via Android
deepin 的时间有点问题。每次开了 deepin 再回 win 时间都会错误,后来换了其他 manjaro 就不会了。
|
4
gbcbooks OP @BingoXuan 怪就怪在, 我用 deeping wechat , 时间是对的, 但是用 deeping tim, 和 deeping wxwork, 时间显示就是用的 UTC
|
7
BingoXuan 2019-07-15 11:42:55 +08:00
@gbcbooks
deepin 运行 qq 底层是 wine。按道理来说,获取当前时间是需要通过 wine 的实现的 api 获取的,如果大家都使用同一个 api,不可能会有不一样的结果。很有可能有多个获取时间的 api,从而导致不同。如果和 deepin 有关的话,那 deepin 应该花了很多时间修改 wine 的内部东西。 |
8
gbcbooks OP 今天加班到零晨 2 点, 把问题解决了
来更新一下这个问题的解决方法 首先, 问题产生的原因是, 我的环境变量中 /etc/profile 中, 有一个 export TZ=Asia/Shanghai , 的变. 把这个释注掉就可以了 可能的原理是, 我的桌面环境在启动时, 即使不加这个 export TZ=Asia/Shanghai , 也是能正常读到时区的. 但是, 当 /etc/profile 又多加了一次 export TZ=Asia/Shanghai 之后, 说到的时间就不准了. 从而导致 deepin-qq 和 deepin-wxwork 的时区不对了. |