(Linux) 코어 파일 분석 방법

코어 파일을 분석하는 방법

gdb(GNU 디버거)를 사용하여 코어 파일을 분석하려면:

1. gdb 명령으로 코어 파일을 엽니다.

gdb <실행파일 경로> <core 파일 경로>

예를 들어 /usr/bin/ls 실행 파일과 /tmp/core 파일이 있는 경우 다음과 같이 gdb를 실행합니다.

gdb /usr/bin/ls /tmp/core

2. gdb가 실행 중일 때 “bt” 명령을 사용하여 백트레이스를 확인할 수 있습니다.

역추적은 프로그램이 종료되기 전에 수행한 함수 호출 스택을 보여주고 문제를 식별하는 데 도움이 될 수 있습니다.

bt

3. info Threads 명령을 사용하여 코어 파일에서 스레드 정보를 확인할 수 있습니다.

info threads

4. thread apply all bt 명령을 사용하여 모든 스레드의 역추적을 확인할 수 있습니다.

thread apply all bt

컨텍스트를 출력할 스레드를 선택하세요↓↓↓↓↓

더보기

원하는 스레드를 선택하여 스레드 컨텍스트를 출력할 수 있습니다.

예를 들어 스레드 2의 컨텍스트를 인쇄하려면 다음을 입력하십시오.

thread 2

5. “info registers” 명령을 사용하여 레지스터 정보를 확인할 수 있습니다.

info registers

6. 코어 덤프 파일에서 문제를 식별하고 해결하는 방법은 프로그램의 구조와 문제의 복잡성에 따라 달라질 수 있습니다.

일반적으로 디버깅 정보와 함께 프로그램의 소스 코드를 분석하여 문제를 식별하고 수정하는 것이 좋습니다.

위 과정을 참고하여 gdb를 이용하여 coredump 파일을 분석하고 문제를 해결할 수 있습니다.