일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- nonpaged pool
- windbg
- windows debugging tool
- LiveKD
- dsquery
- failover cluster
- Nested VM
- 작업관리자
- Hyper-V
- SQL Server 2012R2 FCI
- Windows Server 2016 Hyper-v Cluster
- cluster node as Domain controller
- 안철수
- MSCS on VMWare
- iSCSI target
- windows media service
- paged pool
- 인문고전
- ftp7.5 장애조치 클러스터
- Windows Server 2016
- 클러스터
- 터키여행
- Windows Server 2008
- 프로세스 CPU 사용량
- SQL Server 2008
- Local TempDB
- Session space
- Xperf
- windows update
- FTP7.5
- Today
- Total
류짱:Beyond MySelf
LiveKD.exe를 이용하여 운영중인 시스템에서 Full Memory Dump 수집하는 방법 본문
LiveKD.exe를 이용하여 운영중인 시스템에서 Full Memory Dump 수집하는 방법
リュちゃん 2010. 11. 5. 11:17LiveKD.exe를 이용하여 운영중인 시스템에서 Full Memory Dump 수집하는 방법
참고
아래 방법은 현재 운영중인 시스템에 Crash 등 어떠한 영향도 주지 않습니다. 단지 File I/O 가 많이 발생하여, Dump를 수집하는 동안 성능에 약간의 문제가 있을 수 있습니다. 참조하십시오.
준비사항
1. 아래 링크에서 Debugging 툴인 windbg (Debugging Tools for Windows)를 다운로드하여 설치를 합니다.
http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx
C:\Program Files\Debugging Tools for Windows (x86) 폴더가 생성 됩니다.
참고
위 링크는 32Bit 용 windbg를 다운로드할 수 있습니다. 만약 문제의 시스템이 64Bit 시스템이라면, 아래 링크를 이용하십시오.
http://www.microsoft.com/whdc/devtools/debugging/install64bit.mspx
2. 아래 링크에서 LiveKD.exe를 다운로드하신 후 C:\Program Files\Debugging Tools for Windows (x86)폴더에 복사해 넣습니다.
http://technet.microsoft.com/en-us/sysinternals/bb897415.aspx
3. 명령 프롬프트(cmd.exe)를 수행합니다. C:\ 루트로 이동합니다.
4. LivdKD 를 통해 특정 시스템의 Memory dump를 수집하기 위해서는 Public symbol을 캐쉬로 가져야 합니다. 따라서 아래와 같이 특정 폴더를 생성해 줍니다.
MD C:\Symbols
5. 아래 명령을 통해 위에서 생성한 폴더에 Symbol 이 캐쉬될 수 있도록 설정합니다.
CD C:\Program Files\Debugging Tools for Windows (x86)
Livekd -y SRV*c:\websymbols*http://msdl.microsoft.com/download/symbols
참고 : 위 명령을 처음 수행할 때, 웹에서 해당 시스템의 Symbol 테이블을 확인하고, 다운로드하기 때문에 조금 반응이 늦어질 수 있습니다.
수행 화면은 아래와 같습니다.
C:\Program Files\Debugging Tools for Windows (x86) livekd -y SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
C:\Program Files\Debugging Tools for Windows (x86)>livekd.exe -y srv*c:\symbols*
http://msdl.microsoft.com/download/symbols\
LiveKd v5.0 - Execute kd/windbg on a live system
Sysinternals - www.sysinternals.com
Copyright (C) 2000-2010 Mark Russinovich and Ken Johnson
Launching C:\Program Files\Debugging Tools for Windows (x86)\kd.exe:
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.
Loading Dump File [C:\WINDOWS\livekd.dmp]
Kernel Complete Dump File: Full address space is available
Comment: 'LiveKD live system view'
Symbol search path is: srv*c:\symbols*http://msdl.microsoft.com/download/symbols
\
Executable search path is:
Windows Server 2003 Kernel Version 3790 (Service Pack 2) UP Free x86 compatible
Product: LanManNt, suite: Enterprise TerminalServer
Built by: 3790.srv03_sp2_gdr.100216-1301
Machine Name:
Kernel base = 0x80800000 PsLoadedModuleList = 0x808a8e48
Debug session time: Sun Feb 13 11:34:57.897 17420 (UTC + 9:00)
System Uptime: 5 days 17:52:55.604
WARNING: Process directory table base 0280C000 doesn't match CR3 0F8F4000
WARNING: Process directory table base 0280C000 doesn't match CR3 0F8F4000
Loading Kernel Symbols
...............................................................
...............................................
Loading User Symbols
...........
Loading unloaded module list
...............
kd>
[전체 메모리 덤프 수집 방법]
1. LiveKD를 수행합니다. 만약 LiveKD가 수행 중일 때, "Execute KD again? (y/n)" 메시지에서 Y 를 선택하셔도 됩니다. 새로 LivdKD를 수행하려면 아래와 같이 수행합니다.
CD C:\Program Files\Debugging Tools for Windows (x86)
Livekd -y SRV*c:\websymbols*http://msdl.microsoft.com/download/symbols
참고
LivdKD.exe 파일이 C:\Debuggers 폴더에 있기 때문에 위와 같이 명령 프롬프트 창에서 C:\Debuggers 폴더 아래에서 명령을 수행해야 합니다.
2. 시스템에 Crash 나 서비스 프로그램 등에 영향을 주지 않고 Full Memory Dump를 수집하기 위해 LiveKD세션에서 아래와 같이 명령을 수행합니다.
.dump /f /o X:\fulldump.dmp
참고
위 명령에서의 X: 드라이브는 현재 시스템의 Physical 메모리보다 큰 가용공간을 가져야 합니다.
즉, 실제 메모리가 8GB 라면, X: 드라이브의 여유 공간이 최소 8GB 이상이어야 합니다. 물론 fulldump.dmp 파일명과 X: 드라이브는 다른 것으로 변경이 가능합니다.
3. Dump 저장 프로세스가 모두 끝나면, Q 명령을 수행하여 LiveKD를 종료합니다.
감사합니다.