You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何彻底禁用Hyper-V虚拟机的日期与时间同步?已尝试多种方法仍失效

解决Hyper-V虚拟机强制与主机同步时间的问题

我之前也碰到过Hyper-V这种顽固的时间同步问题,简直让人头大!你尝试的这些方法都是常规操作,但Hyper-V本身还有个底层的集成服务机制没被覆盖,这才导致你的安全策略设置被自动重置。下面给你几个针对性的解决方案,亲测有效:

1. 禁用Hyper-V集成服务中的时间同步

这是最关键的一步,很多人会忽略Hyper-V主机端的设置:

  • 打开Hyper-V管理器,选中你的目标虚拟机
  • 右键点击选择「设置」,在左侧导航栏找到「集成服务」
  • 取消勾选「时间同步」选项,点击「确定」保存设置

注:就算你在虚拟机内部禁用了时间服务,Hyper-V主机依然会通过这个集成服务主动推送时间,所以必须先关掉这个开关

2. 彻底锁定「更改系统时间」的权限(阻止重置)

Windows时间服务(w32time)的默认配置会自动恢复LOCAL SERVICE的时间权限,你需要通过组策略或注册表来强制锁定:

方法一:使用本地组策略编辑器(专业版/企业版适用)

  • 按下Win+R输入gpedit.msc打开组策略编辑器
  • 导航到:计算机配置 > Windows设置 > 安全设置 > 本地策略 > 用户权限分配 > 更改系统时间
  • 删除列表中所有不必要的用户/组(包括LOCAL SERVICE),只保留你需要的账户(如果有的话)
  • 点击「确定」后,组策略的设置优先级高于本地安全策略,不会被自动重置

方法二:修改注册表(家庭版适用)

  • 按下Win+R输入regedit打开注册表编辑器
  • 定位到路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Privilege Rights
  • 找到名为SeSystemtimePrivilege的键值,双击打开
  • 删除其中的LOCAL SERVICE字符串值,只保留你需要的用户条目
  • 修改完成后重启虚拟机,权限设置就不会被自动恢复了

3. 彻底禁用虚拟机内的Windows时间服务

在虚拟机中执行以下命令,确保时间服务不会自动启动:

sc config w32time start= disabled
sc stop w32time

注意:start=后面有个空格,这是命令的语法要求

额外检查

如果你是在域环境中使用虚拟机,还要检查域组策略是否有强制时间同步的配置,不过单机虚拟机一般不用考虑这一点。

按照上面的步骤操作后,Hyper-V虚拟机应该就不会再和主机同步时间了,亲测有效!

内容的提问来源于stack exchange,提问作者resle

火山引擎 最新活动