当我使用 wine 在 Lubuntu 18.04 上运行一些 Windows exe 程序文件时,我更新和升级可能已经更新了 wine。
当我仍在运行 Windows exe 程序时,我尝试运行另一个 Windows exe 程序,
$ wine another.exe
wine client error:0: version mismatch 547/571.
Your wineserver binary was not upgraded correctly,
or you have an older one somewhere in your PATH.
Or maybe the wrong wineserver is still running?
我不想退出正在运行的 Windows exe 程序。这是否意味着我不应该杀死正在运行的葡萄酒进程?我该怎么做才能启动其他窗口 exe 程序?
这是部署中的常见问题:滚动升级/部署吗?
谢谢。
我知道现在为时已晚,但一般规则是你不应该在 Wine 运行时升级它,或者如果你这样做,计划在升级后尽快重新启动正在运行的实例。(许多其他程序也是如此,例如 Firefox 和 LibreOffice。)
是的,你不应该杀死正在运行的 Wine 进程。
你可以将你当前的 Wine 前缀复制到一个新的前缀,然后在那里启动升级后的 Wine——Wine 每个前缀运行一个服务器。假设您当前的 Wine 前缀是
~/.wine
,您将运行是的,或者至少,这是一个需要明确解决的场景:新版本的服务器需要接受和处理来自旧版本客户端的连接。在 Wine 的情况下,客户端希望连接到运行相同版本的服务器;没有拆分升级的规定。这种期望被嵌入到很多地方:主要
NTDLL
检查wineserver
版本,一些 DLL 检查它们对应的 Wine 驱动程序版本等。