缺少 Exchange Writer + 缺少 System Writer + 特定服务定期崩溃 + Hyper-V VM

缺少 Exchange Writer + 缺少 System Writer + 特定服务定期崩溃 + Hyper-V VM

我在多个 Server 2012 R2 虚拟机(Hyper-V 主机)上遇到了一些奇怪的错误。

  • 启动时缺少 VSS 编写器:系统编写器和 Exchange 编写器。

我在网上搜索了可能的解决方案,包括修补程序,但它们不适用于我的情况。如果我重新启动负责这两个写入器的服务,写入器就会出现。然而,它们过一会儿就消失了。

  • 一些特定的服务经常崩溃(并且正在恢复)

COM+ 事件系统服务意外终止。

Windows Font Cache Service 服务意外终止

网络列表服务意外终止

网络商店接口服务意外终止

他们平均已经这样做了“50次”

我的猜测是他们让另外 2 个编写器消失。我认为这些服务都托管在同一个 svchost.exe 中。因为同时,可以在应用程序日志中看到此错误:

错误应用程序名称:svchost.exe,版本:6.3.9600.17415,时间戳:0x54504177
错误模块名称:regsvc.dll_unloaded,版本:6.3.9600.17415,时间戳:0x54504293
异常代码:0xc0000005
错误偏移量:0x000000000000318b 错误
进程 ID:0xa818
错误应用程序启动时间:0x01d12c0f3318f052
错误应用程序路径:C:\Windows\system32\svchost.exe
错误模块路径:regsvc.dll

应用程序日志中没有其他值得注意的事件。

我已经检查:vss 键上的 regkey 权限,并且我已经对 winsxs 文件夹进行了 takeown 修复。
此服务器上未安装 Visual Studio。

仅发生在 VM 主机(第 2 代)- Server 2012 R2 服务器上。

有人知道吗?我很困惑,我已经浪费了几个小时寻找可能的解决方案。

答案1

我现在可以确认问题出在 svchost 内部托管的某个服务上。

在为每项服务设置单独的进程后,只有 Windows 时间服务不断崩溃。VSS 写入器已恢复,我已连续 4 天成功备份受影响的服务器。这绝对是第一次。

现在剩下的就是找出时间服务不断崩溃的原因,但这不是首要任务。

VSS 编写器受到影响,因为 Exchange 存储服务依赖于网络存储接口服务。它崩溃并重新启动,存储服务保持正常运行,但崩溃足以中断 VSS 服务。

答案2

sc config EventSystem type= own
sc config FontCache type= own
sc config netprofm type= own
sc config RemoteRegistry type= own
sc config W32Time type= own
sc config WinHttpAutoProxySvc type= own
sc config nsi type= own

帮我修好了

答案3

我在多台服务器上遇到了这个问题,并看到了这个线程中有帮助的解决方案,但我仍然想知道原因以及是否有更具体的修复方法。

我使用了一个名为“FullEventLogView”的小工具,它允许您按事件级别和日期/时间进行搜索,但会搜索并显示所有事件日志(而不仅仅是应用程序和系统等主要日志)。然后我能够看到,在多个服务失败前几秒钟,有大量警告和错误,这些警告和错误引用了我们使用的漏洞扫描程序。

在与扫描仪供应商取得联系后,他们知道了这个问题并回复道:

这是 Microsoft 的一个已知问题,以下信息提供了一种解决方法。Windows 2012 Servers 上出现了以下服务中断:将根本原因缩小到 Microsoft Windows 2012R2 操作系统中的可疑缺陷(具体来说,是远程注册表服务 <regsvc.dll>)。我们建议与 Microsoft 联系以获得进一步的指导。Microsoft 的进一步调查证实了 regsvc.dll 中存在缺陷,该缺陷已在其记录的缺陷数据库中列出 - 被列为影响少数客户。目前尚无计划修复 Windows 2012 中的缺陷;但 Microsoft 已推荐一种可防止出现错误情况的解决方法。问题技术细节 Windows 远程注册表服务 (regsvc.dll) 在 Windows 2012 Server 中配置为在需要其功能时启动;并在空闲 10 分钟后停止。远程注册表与以下服务一起在共享的 SvcHost 进程中执行 - (EventSystem、FontCache、netprofm、nsi、W32Time)。在有限数量的服务器上,regsvc.dll 崩溃,导致同一 SvcHost 中的所有其他服务也停止,而不是在漏洞扫描即将结束时优雅地停止。在远程注册表崩溃后的五分钟内,操作系统会自动重新启动 EventSystem、FontCache、netprofm、nsi 和 W32Time。Microsoft 建议的解决方法是将远程注册表从共享 SvcHost 移至其自己的 SvcHost。(这显然是 Windows 2016 Server 和 Windows 10 中使用的设计)。完成更改的命令如下:
sc config remoteregistry type=own

我在多台服务器上尝试了上述操作,确实解决了该问题。

相关内容