리눅스/Dump

레드햇/Centos 커널 코어덤프 분석1. vmcore파일 읽어 들이기

G. Hong 2019. 2. 27. 19:38
728x90
반응형

2019/02/27 - [Linux] - 테스트용 커널 크레쉬 덤프(crash dump) 생성하기

 

테스트용 커널 크레쉬 덤프(crash dump) 생성하기

테스트용으로 커널 크레쉬덤프를 생성하는 방법입니다. (RHEL, Centos 7 기준입니다) 덤프를 생성하기 전에 kdump가 설정되어 동작하고 있는지 확인이 되어야 합니다. kdump가 동작하는 지는 아래와 같이 확인이..

itknowledge.tistory.com

레드햇/Centos 리눅스에서 코어덤프파일을 분석하기 위해서는 crash 유틸리티를 사용하여야 합니다. gdb를 사용해서 분석을 하기도 하지만 분석이 되지 않는 경우도 있습니다.

 

우선 crash와 kenel-debuginfo 패키지가 설치가 되어 있는지 확인하여야 합니다. 아래는 yum 또는 rpm으로 crash 패키지를  설치하는 예시입니다.

 

[root@Centos ~]# yum install crash

또는

[root@Centos ~]# rpm -ivh crash-7.2.3-8.el7.x86_64.rpm

 

debuginfo는 아래의 커맨드로 설치가 가능합니다.

[root@Centos ~]# debuginfo-install kernel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Could not find debuginfo for main pkg: kernel-3.10.0-693.17.1.el7.x86_64
No debuginfo packages available to install
 
위와 같이 yum에서 debuginfo를 찾을 수 없는 경우가 있으면 직접 rpm파일을 찾아서 진행하셔야 합니다. 

centos의 경우에는 아래의 페이지에서 각 커널버젼에 해당하는 debuginfo rpm 파일을 찾을 수 있습니다.

http://debuginfo.centos.org/

 

[root@Centos ~]# wget http://debuginfo.centos.org/7/x86_64/kernel-debuginfo-3.10.0-693.17.1.el7.x86_64.rpm

[root@Centos ~]# wget http://debuginfo.centos.org/7/x86_64/kernel-debuginfo-common-x86_64-3.10.0-693.17.1.el7.x86_64.rpm

[root@Centos ~]# rpm -ivh kernel-debuginfo-common-x86_64-3.10.0-693.17.1.el7.x86_64.rpm

[root@Centos ~]# rpm -ivh kernel-debuginfo-3.10.0-693.17.1.el7.x86_64.rpm

crash와 kenel-debuginfo 설치가 완료 되었다면, 아래와 같은 커맨드를 사용하여서 분석을 시작 할 수 있습니다. 커널과 timestamp 부분은 시스템에 맞게 변경 해 주셔야 합니다.

# crash /usr/lib/debug/lib/modules/kernel/vmlinux /var/crash/timestamp/vmcore

 
아래는 사용 예시입니다.
[root@Centos 127.0.0.1-2019-02-27-06:14:47]# uname -r
3.10.0-693.17.1.el7.x86_64
[root@Centos 127.0.0.1-2019-02-27-06:14:47]# crash /usr/lib/debug/lib/modules/3.10.0-693.17.1.el7.x86_64/vmlinux vmcore
 

아래와 같이 crash> 프롬프트가 뜨면서 덤프분석을 시작하실 수 있습니다.

 

crash 프롬프트

2020/02/11 - [Linux] - 레드햇/Centos 커널 코어덤프 분석2. 덤프분석시작

 

레드햇/Centos 커널 코어덤프 분석2. 덤프분석시작

이 포스팅에서 설명하는 커맨드들은 커널덤프 분석을 위해 crash> 프롬프트에서 실행이 되어야 합니다. 2019/02/27 - [Linux] - 레드햇/Centos 커널 코어덤프 분석1. vmcore파일 읽어 들이기 레드햇/Centos 커널..

itknowledge.tistory.com

2019/02/27 - [Linux] - 테스트용 커널 크레쉬 덤프(crash dump) 생성하기

 

테스트용 커널 크레쉬 덤프(crash dump) 생성하기

테스트용으로 커널 크레쉬덤프를 생성하는 방법입니다. (RHEL, Centos 7 기준입니다) 덤프를 생성하기 전에 kdump가 설정되어 동작하고 있는지 확인이 되어야 합니다. kdump가 동작하는 지는 아래와 같이 확인이..

itknowledge.tistory.com

 

728x90
반응형