NotMyFault를 이용하여 Dump 수집 방법(Full Dump)
/*작성일자*/
- 2016.07.28
테스트 환경 : Windows Server 2008 R2 x64
Physical Memory: 4GB
<NotMyFault를 이용하여 Windows 메모리 덤프 수집하는 방법>
1. Full 덤프를 생성하기 위해서는 아래와 같이 레지스트리 값이 설정되어야 한다.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]
2. UI상으로 Full덤프로 설정이 되었는지 확인
제어판 -> 시스템
3. 첨부 파일 Notmyfault.zip 을 C:\temp 폴더에 저장 후 압축 해제
4. 관리자 권한 명령 실행 창 (cmd.exe)에서 아래 명령을 실행하여 시스템을 crash시키고 메모리 덤프를 수집
(메모리 덤프 수집을 위해서 시스템을 강제 crash시키고, 시스템이 재부팅이 된다.)
notmyfault.exe /crash
(대략 30초 후에 Crash 됨)
a. 관리자 권한으로 cmd 실행
b. cmd >> cd c:\temp
c. cmd >> notmyfault.exe /crash
시스템 reboot
d. 몇 초 후에 아래와 같은 BSOD가 나타남
e. 시스템 이벤트 로그에서 다음과 같은 오류를 확인 가능
5. 메모리 덤프는 C:\Windows\memory.dmp 파일로 생성
메모리 덤프 사이즈를 확인 해야 한다. 이유는 마지막에 명시함. 해당 테스트 머신의 경우 Physical 메모리가 4GB
※ Paging file Size Check
- Full dump 생성되기 위해서는 %SYSTEMROOT%에 pagefile.sys의 크기가 실제 physical 메모리 크기에 약 12MB를 더한 크기 이상으로 존재해야 한다.
ex) 32GB의 시스템일 경우 pagefile.sys의 설정 - (1024MB * 32) + 12MB = 32780MB 이상