排查 IIS 7.x 安装问题
此疑难解答中使用的工具:
- 系统更新就绪情况工具
- MSConfig.exe
此信息仅供参考。 Microsoft 不做任何明示或暗示的担保。
概述
排查 IIS 安装问题可能是一项非常棘手的任务。 安装过程在简单的文本文件中执行自己的日志记录,通常称为 IIS 7.x 版本的 IIS7.log (,IIS 6.0) 的 IIS6.log。
在本部分中,我们将重点介绍 IIS7.x 安装问题,并参考其日志记录以进行故障排除。
查看 IIS 设置日志
要查找的第一件事是 IIS7 中的错误。LOG (例如: c:\windows\iis7.log
) 。
搜索单词“FAIL”
下面是 IIS7.log 中条目的示例
[11/12/2010 19:48:13] [ ***** IIS 7.0 Component Based Setup ***** ]
[11/12/2010 19:48:13] "C:\Windows\System32\inetsrv\iissetup.exe" /install FTPServer
[11/12/2010 19:48:13] < !!FAIL!! > METABASE_UTIL::InstallFtpMetabaseEntries result=0x800708c5
[11/12/2010 19:48:13] < !!FAIL!! > Install of component FTPServer result=0x800708c5
[11/12/2010 19:48:13] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x800708c5
[11/12/2010 19:48:13] [ End of IIS 7.0 Component Based Setup ]
可以看到,它清楚地告诉你 EXE 安装程序是否运行,以及是否成功。 使用错误消息和安装命令行搜索 bing.com 找到错误: “InstallFtpMetabaseEntries result=0x800708c5”
可以从上述命令行重新运行他设置命令, (突出显示) 。 这样做将帮助你隔离问题,并使你能够收集正确的数据 (,例如进程监视器) ,只是该失败,你不必再次运行安装程序。
尝试停止所有第三方 (非 Microsoft 服务启动) 并重新启动框,然后再尝试下次安装/卸载 IIS。
若要快速识别和禁用这些服务,请转到开始运行并键入“msconfig” (而不引用) 。 它将打开系统配置对话框。 转到“服务”选项卡,选中复选框“隐藏底部的所有 Microsoft 服务”,然后禁用可停止的所有第三方服务,而不会影响服务器的重新启动。 通常这些是防病毒软件、备份软件等
另一种常见但最重要的方案是卸载 WPAS“Windows 进程激活服务”,尤其是在他们尝试卸载和重新安装 IIS 时。 安装 IIS 时,安装程序会自动将 WPAS 添加为依赖项之一,但卸载 IIS WPAS 时不会自动卸载 – 使核心二进制文件保持不变, (这样做的原因不是 BUG。简言之,不会卸载,以确保最终不会在显式使用此过程模型的框中中断其他服务,例如 WCF 服务) 。 必须确保通过转到服务器管理器下的功能并选择“Windows 进程激活服务”卸载来显式卸载 WPAS。
注意
这在 IIS 7.5 中已更改。 在 IIS 7.5 中,卸载程序将检查 WAS (的其他依赖项,例如 WCF) ,如果未找到任何依赖项,则 IIS 卸载过程将删除 WAS。
查看基于 CBS (组件的安装程序) 日志
如果 IIS7.log 干净,则很有可能问题位于 CBS (基于组件的安装程序) 引擎中。 可以在 中找到 C:\Windows\Logs\CBS folder
CBS 日志。
与 IIS7.log 文件一样,CBS.log 文件是一个文本文件,可以在所选文本编辑器中打开, (你必须从管理命令提示符) 打开此文件。 可以通过记住安装失败的时间范围并在 CBS 中搜索“不会忽略故障:将启动回滚”字符串来获取这些日志中的一些有用信息。日志文件。 下面是一个此类实例的示例。
2010-07-08 14:04:08, Info CSI 00000047 Calling generic command executable (sequence 2): [40]"C:\Windows\System32\inetsrv\iissetup.exe" CmdLine: [151]""C:\Windows\System32\inetsrv\iissetup.exe" /launch C:\Windows\System32\inetsrv\appcmd.exe reset config -section:system.applicationHost/listenerAdapters"
2010-07-08 14:04:08, Error CSI 00000048 (F) Done with generic command 2; CreateProcess returned 0, CPAW returned S_OK Process exit code 16386 (0x00004002) resulted in success? FALSE Process output: [l:22 [22]"Failed = 0x80004002"][gle=0x80004005]
2010-07-08 14:04:09, Info CSI 00000051@2010/7/8:18:04:09.688 CSI Advanced installer perf trace:CSIPERF:AIDONE; {81a34a10-4256-436a-89d6-794b97ca407c};Microsoft-Windows-IIS-SharedLibraries, Version = 6.1.7600.16385, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey Neutral;6148228
2010-07-08 14:04:09, Error [0x018007] CSI 00000052 (F) Failed execution of queue item Installer: Generic Command ({81a34a10-4256-436a-89d6-794b97ca407c}) with HRESULT HRESULT_FROM_WIN32(14109). Failure will not be ignored: A rollback will be initiated after all the operations in the installer queue are completed; installer is reliable (2)[gle=0x80004005]
2010-07-08 14:04:10, Info CSI 00000053 End executing advanced installer (sequence 75) Completion status: HRESULT_FROM_WIN32(ERROR_ADVANCED_INSTALLER_FAILED)
与 IIS7.log 一样,可以在 BING.COM 开始使用 Web 搜索技能,并查找下一个线索。
提示
尝试其他角色,看看它们是否失败。 如果他们执行 IIS 只是受害者,如果你不希望执行后续步骤,则可以参与平台设置以获取帮助。
运行 系统更新就绪性工具 (短名称 CHECKSUR) – 此工具适用于 Windows Vista、Windows Server 2008、Windows 7 和 Windows Server 2008 R2。 此工具的下载有点大,但值得运行。 如果安装此工具失败,则你对计算机存在一些其他问题,需要专家帮助。 请与 Microsoft 支持人员联系以获取相同。
从提升的命令提示符运行命令 sfc /scannow 。 此命令可能需要 5-10 分钟,如果此工具检测到损坏,它也会尝试修复它。 如果存在错误并修复了此工具,则可能会看到类似此类的错误。
C:\>sfc /scannow
Beginning system scan. This process will take some time.
Beginning verification phase of system scan.
Verification 100% complete.
Windows Resource Protection found corrupt files and successfully repaired
them. Details are included in the CBS.Log windir\Logs\CBS\CBS.log. For example C:\Windows\Logs\CBS\CBS.log
如果此命令报告错误且无法修复错误,请与 Microsoft 支持人员联系以获取帮助。 你可能会看到这样的内容。
Windows Resource Protection found corrupt files but was unable to fix some of them.
Details are included in the CBS.Log windir\Logs\CBS\CBS.log. For example
C:\Windows\Logs\CBS\CBS.log
仅当两个工具都成功运行时,才应进一步进行故障排除。 运行这些步骤可能修复了 CBS 中存在的任何腐败问题,因为这实质上是这些工具执行的操作。 无论如何,运行这些工具并不是一个坏主意,因为运行工具可能需要大约 20-30 分钟才能运行这两个工具,但如果这些工具在 CBS 引擎中发现问题,它实际上可以节省你可能花在一个问题上的长时间。
其他资源
- 947821 Windows Vista 的系统更新准备情况工具、Windows Server 2008、Windows 7 和 Windows Server 2008 R2 的系统更新就绪情况工具的说明
- 929833如何使用系统文件检查器工具对 Windows Vista 或 Windows 7 上的缺失或损坏的系统文件进行故障排除
- 928228如何分析 Microsoft Windows 资源检查器 (SFC.exe) 程序在 Windows Vista 中生成的日志文件条目
- 2509997无法在 Windows Vista、Windows 7、Windows Server 2008 和 Windows Server 2008 R2 中安装更新