尽管 VMware Workstation 有快照功能可以恢复到某一时间点,但是 guest 系统在启动之后日期时间还是会自动和主机同步到当前时间,那么能不能手工设置 guest 的启动时间呢?
一、修改方法
1. 硬修改
参考:Disabling Time Synchronization (1189) ,打开 *.vmx 文件,添加以下内容:
tools.syncTime = "FALSE" time.synchronize.continue = "FALSE" time.synchronize.restore = "FALSE" time.synchronize.resume.disk = "FALSE" time.synchronize.shrink = "FALSE" time.synchronize.tools.startup = "FALSE" time.synchronize.tools.enable = "FALSE" time.synchronize.resume.host = "FALSE" rtc.startTime = 1469923200
注意,第一行 tools.syncTime 有可能文件里原有就有,不要重复了:
tools.syncTime = "FALSE"
最后一行 rtc.startTime,就是设置的系统启动时的起始时间,参考:Timekeeping in VMware Virtual Machines [PDF] 。
rtc.startTime = 1469923200
1469923200 表示 2016-07-31 00:00:00。可使用 http://www.onlineconversion.com/unix_time.htm 进行转化.。
以上,在 VMware Workstation V11.1 和 VMware Player v7.1 测试通过。
2. 软修改
之所以称为软修改,是利用 Windows 命令 date 来修改:
date 2016-07-31
这种方法不够底层,但也是一种选择。
二、扩展阅读
- http://www.onlineconversion.com/unix_time.htm 的核心代码摘录(点击打开查看源码)。