双系统下从另一系统切换回windows时,系统时间不同步问题

描述:

三个月前也是给电脑上开了个ubuntu,一开始那两天一直在折腾新系统,差不多过了一周,切换回win11系统过后,用ssh连接服务器反复报错,一番追寻之下,才发现系统时间有点奇奇怪怪,别说,还真是这个毛病。

原因:

不同的系统使用的时间不同,有的使用的地方时,有的却是世界协调时,这就会导致不同的时间管理系统在启动时的时间发生错误变化

解决方案:

  1. 手动同步
    • 打开设置找到时间,手动同步时间
  2. 添加任务计划程序,开机自动同步前提:写好同步时间的脚本文件此方法治标不治本
    • 打开任务计划程序:按 Win + R 打开运行窗口,输入 taskschd.msc,然后按回车。这将打开任务计划程序。
    • 创建基本任务:
      • 在任务计划程序中,选择 创建基本任务…”。
      • 为任务命名,例如 “Sync_time”,然后点击 “下一步”。
    • 设置触发器:
      • 在触发器选择中,选择 “当计算机启动时”,然后点击 “下一步”。
    • 设置操作:
      • 在操作选择中,选择 “启动程序”,然后点击 “下一步”。
      • 在 “程序/脚本” 字段中,输入你创建的 .bat 文件的路径,例如 C:\Path\To\Sync_time.bat
    • 以管理员身份运行:
      • 在 “创建基本任务向导” 中,点击 “下一步” 完成任务创建后。
      • 找到刚创建的任务,在任务计划程序中右键点击该任务,选择 “属性”。
      • 在 “常规” 选项卡中,勾选 “使用最高权限运行”。
      • 完成任务设置:
    • 点击 “确定” 保存更改。你可能需要输入管理员密码以确认更改。
  3. 从根本上解决问题

    究其原因,还是因为两个系统的时间管理方式不同,但是bios时间是不变的,在Linux系统下bios就是世界协调时GMT+0,此时切换回win系统时,它会使用地方时,也就是GMT+8,从而导致win系统的时间出错,所以最终最好的解决方法就是在Linux系统下修改时间管理方式,把当前时间也设置为GMT+8,具体操作如下:

在Linux系统下打开终端,输入:

sudo vim /etc/default/rcS

将utc=yes改成no就可以了

tips:

方法二可以设置任何脚本文件到开机启动项中,包括任何不安全的脚本,所以应当注意脚本文件位置的安全性

上一篇
下一篇