我正在尝试通过pyVmomi在客户端虚拟机中启动服务。我在这方面的官方文件中找不到多少,我搜索网无济于事。然后,我修改了用于成功启动静默MSI安装的代码,只需使用参数' net start'运行cmd.exe。加上服务名称。这会返回一个有效的进程ID,就像它已启动cmd一样,但是服务并没有启动。我确实想知道它是否是权限,但是在来宾VM中存在与权限(或缺少)相关的特定错误,并且这不会被抛出。我根本没有任何错误。关于如何通过pyVmomi启动服务的任何想法?
def startService(ServiceName):
"""
starts a specified windows service [serviceName]
"""
pm = esxiContent.guestOperationsManager.processManager
ps = vim.vm.guest.ProcessManager.ProgramSpec(
programPath='cmd.exe', arguments='net start ' + ServiceName,
)
pid = pm.StartProgramInGuest(vm, creds, ps)
print(pid)
答案 0 :(得分:0)
最后我无法找到答案,所以我只是在其中编写了一个带有net start命令的批处理文件,然后使用上面的processManager执行此操作。