服务器dump文件位置,使用windbg分析服务器的DUMP文件

本文介绍了如何通过分析服务器的DUMP文件定位故障,特别是当服务器出现自动重启的问题。首先排除硬件问题,然后利用Windbg工具进行故障分析,通过设置符号文件路径、打开DUMP文件,最后通过!analyze -v命令获取详细调试信息,发现sptd.sys驱动文件导致了系统崩溃。解决方案是卸载或禁用该驱动。
摘要由CSDN通过智能技术生成

最近一台联想R630

G7总是自动重启,因为在出现”自动重启”故障前曾更换过内存,因此首先报给联想800,确定不是硬件问题。问题出在哪里?现在我们只能根据日志文件和DUMP文件进行分析了。

操作系统日志文件内容:

Error code 1000007f, parameter1 00000008,

parameter2 f774ffe0, parameter3 00000000, parameter4

00000000.

The reason supplied by user PRD_ROI3Administrator

for the last unexpected shutdown of this computer is: System

Failure: Stop error

Reason Code: 0x805000f

Bug ID:

Bugcheck String: 0x0000007f (0x00000008,

0xf774ffe0, 0x00000000, 0x00000000)

Comment: 0x0000007f (0x00000008, 0xf774ffe0,

0x00000000, 0x00000000)

DUMP文件位置:

windowsmemory.dmp

分析全过程:

1. 下载安装windwos

的debug tools,软件名为windbg;

2. 安装后创建一个临时目录,我创建的为 c:temp;

3. 启动windbg

4. 在windbg界面设定符号文件路径

file->symbol file path 输入:

SRV *c:temp* http://msdl.microsoft.com/download/symbols,然后确定

5. windbg界面: file->open crash dump,打开

memory.dmp文件;

6. 打开后,等待提示,当出现Use !analyze -v to get detailed debugging

information. 字样后,在下面输入框!analyze

-v;r;kv;lmtn;.logclose;

7. 分析完毕,可以知道什么导致的故障.请注意下面的windbg输出内容中的红字部分。

分析得出sptd.sys(虚拟光驱软件dametools使用的驱动文件)这个驱动模块出错,导致win2003自动重启。

解决方法:

卸载dametools或使用第三方软件(如autoruns)禁用sptd.sys驱动。我直接卸载dametools。

windbg输出内容(很长):

Loading Dump File [C:Documents and

SettingsAdministratorLocal SettingsTempDWRCC

DownloadsMEMORY.DMP]

Kernel Summary Dump File: Only kernel address space is

available

Symbol search path is:

SRV*c:temp*http://msdl.microsoft.com/download/symbols

Executable search path is:

Windows Server 2003 Kernel Version 3790 (Service Pack 2) MP (8

procs) Free x86 compatible

Product: Server, suite: Enterprise TerminalServer

SingleUserTS

Built by: 3790.srv03_sp2_gdr.090319-1204

Machine Name:

Kernel base = 0x80800000 PsLoadedModuleList = 0x808a6ea8

Debug session time: Sun Jul 26 12:01:56.656 2009 (GMT+8)

System Uptime: 7 days 5:44:46.856

WARNING: Process directory table base 7FBED8A0 doesn't match CR3

005BF000

WARNING: Process directory table base 7FBED8A0 doesn't match CR3

005BF000

Loading Kernel Symbols

...............................................................

................................................

Loading User Symbols

PEB is paged out (Peb.Ldr = 7ffd400c). Type ".hh

dbgerr001" for details

Loading unloaded module list

........................

*******************************************************************************

* *

* Bugcheck

Analysis *

* *

*******************************************************************************

Use !analyze -v to get detailed debugging

information.

BugCheck 7F, {8, f774ffe0, 0, 0}

*** ERROR: Module load completed but symbols could

not be loaded for sptd.sys

*** ERROR: Module load completed but symbols could not be loaded

for SYMEVENT.SYS

*** ERROR: Module load completed but symbols could not be loaded

for savrt.sys

PEB is paged out (Peb.Ldr = 7ffd400c). Type ".hh

dbgerr001" for details

PEB is paged out (Peb.Ldr = 7ffd400c)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windbg是Windows平台上的一款强大的调试工具,可以用于分析dump文件。当一个程序崩溃或异常退出时,系统会生成一个dump文件,其中包含了程序在崩溃前的内存状态、寄存器的值以及调用栈等信息。通过分析dump文件,可以帮助我们确定程序崩溃的原因。 使用Windbg分析dump文件的步骤如下: 首先,打开Windbg并选择“File”菜单中的“Open Crash Dump”,然后选择要分析dump文件。打开dump文件后,Windbg会加载其中的调试信息,包括程序、模块、符号等。 在Windbg的命令窗口中,可以输入一系列的命令来分析dump文件。其中一些常用的命令如下: 1. "!analyze -v":分析dump文件并提供详细的分析报告,报告中包含了崩溃的原因和相关的线程堆栈信息。 2. "kb":显示当前线程的调用栈,可以根据调用栈信息来查找崩溃的位置。 3. "lm":显示加载的模块信息,可以查看程序中加载的模块和其对应的版本号。 4. ".exr -1":显示当前异常的记录,包括异常的类型和相关的寄存器的值。 5. ".reload /f":强制重新加载符号文件,以确保符号信息的准确性。 通过分析命令的执行结果,我们可以逐步追踪问题并找到程序崩溃的原因。在分析过程中,还可以使用其他的命令来查看内存的内容、寄存器的值以及线程的信息等。 总的来说,Windbg是一款功能强大的调试工具,通过分析dump文件可以帮助我们深入了解程序崩溃的原因,从而进行相应的调试和修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值