728x90
core 파일을 분석하는 방법
gdb(GNU Debugger)를 사용하여 core 파일을 분석하는 방법은 다음과 같습니다
1. gdb 명령을 사용하여 core 파일을 연다.
gdb <실행파일 경로> <core 파일 경로>
예를 들어, /usr/bin/ls 실행파일과 /tmp/core 파일이 있다면 다음과 같이 gdb를 실행합니다.
gdb /usr/bin/ls /tmp/core
2. gdb가 실행되면, "bt" 명령을 사용하여 backtrace를 확인할 수 있습니다. backtrace는 프로그램이 죽기 전까지 실행한 함수 호출 스택을 나타내며, 문제점을 파악하는 데 도움이 됩니다.
bt
3. "info threads" 명령을 사용하여 코어 파일에서 발생한 스레드 정보를 확인할 수 있습니다.
info threads
4. "thread apply all bt" 명령을 사용하여 모든 스레드의 backtrace를 확인할 수 있습니다.
thread apply all bt
원하는 스레드를 선택하여 컨텍스트를 출력↓↓↓↓↓
더보기
원하는 스레드를 선택하여 스레드 컨텍스트를 출력할 수 있습니다. 예를 들어, 스레드 2의 컨텍스트를 출력하려면 다음과 같이 입력합니다.
thread 2
5. "info registers" 명령을 사용하여 레지스터 정보를 확인할 수 있습니다.
info registers
6. coredump 파일에서 발생한 문제를 파악하여 해결하는 방법은 프로그램의 구조와 문제의 복잡성에 따라 다를 수 있습니다. 일반적으로는, 해당 프로그램의 소스코드와 디버그 정보를 함께 분석하여 문제를 파악하고 해결하는 것이 좋습니다.
위의 과정을 참고하여, gdb를 사용하여 coredump 파일을 분석하고 문제를 해결할 수 있습니다.
728x90
'리눅스' 카테고리의 다른 글
웹서버의 동시 접속자 수(동접자) (0) | 2023.03.24 |
---|---|
[리눅스] siege 명령어 (0) | 2023.03.24 |
ABRT(Automatic Bug Reporting Tool) 시스템에서 문제를 감지 (0) | 2023.03.24 |
Siege를 설치 및 사용하는 방법 (0) | 2023.03.22 |
find 명령어 (0) | 2023.03.20 |