如果安全模式下出现 BSOD,如何从 Windows Server 2008 R2 Guest 中卸载所有 Citrix 驱动程序?

如果安全模式下出现 BSOD,如何从 Windows Server 2008 R2 Guest 中卸载所有 Citrix 驱动程序?

我使用 Citrix XenServer 5.5,在 Windows Server 2008 R2 Guest 上安装了 Xentools 5.5,一年来一切正常。重启后,我们得到一个带有停止代码 7B 的 BSOD,我认为这是 Citrix pv-driver 的问题,但我如何在没有 GUI 的情况下删除此驱动程序,安全模式也会出现 BSOD。

因此,我在同一台虚拟机上安装了第二个 Windows Server,并且可以访问 Guest 的文件系统。在 Windows/System32/driver 中,我删除了 xenvbd.sys 和 scsifilt.sys,在注册表中,我删除了使用 xenvbd 或 scsifilt 找到的所有内容,但 BSOD 仍然存在。

Windows 启动修复和 sfc /scannow 没有帮助。

更新: 所有已知快照都存在同一问题

答案1

从已知良好的备份恢复服务器。

答案2

如果您在客户机上安装 Xen PV 驱动程序,并且出现带有停止 7B 的 BSOD,则可能是驱动程序已损坏或缺少某些文件。首先,您应该找出驱动程序的版本:转到文件系统并获取属性 - 例如 - xenvbd.sys,然后转到 XenTools 安装盘并搜索以下文件:

xenutil.sys
xenvtchn.sys
xenvbd.sys
scsifilt.sys

将此文件复制到 Windows\System32\Drivers\ 后,您可以在安全模式下启动您的 Guest。现在您可以从安全模式安装较新版本的 Xentools(您会在 Xentools 上找到一个在安全模式下也可以工作的安装文件),并且您会收到一些错误。不要重新启动您的服务器。立即卸载此程序,然后清理将开始,所有损坏或丢失的文件和注册表项都将删除并清理您的安装。

现在重新启动并且它起作用了!

答案3

我很高兴问题解决了,我赞成这个问题。不是因为解决方案对其他人有任何弥补价值,而是因为这件事应该成为一个警示故事。

有两件事不应该发生。

一、应该验证修改系统文件或注册表设置的系统更改,并且该验证应该包括系统和更改在重新启动后是否按预期执行。

二、在类似系统或一次性副本上“测试”变化通常可以发现这些类型的问题。

在这种情况下,数字二可能没有直接相关性,但在缺少数字一的环境中,它往往具有相关性。

我推测,如果在最初的改变之后重新启动,系统可能运行良好,但是在发生那件事的那一年,出现了一些问题。

这就是为什么当我参与一项包括系统修改的活动时,我的第一步是重新启动服务器,以确保如果出现任何类似的问题,它们与我正在做的事情无关。

相关内容