서버의 core dump 파일 사이즈설정 확인하기
- ulimit -a 명령어로 core file size를 확인합니다.
서버의 core dump 파일 사이즈 설정하기
- /etc/profile 파일을 수정합니다.
- ulimit -c unlimited 를 하단에 추가하고 저장합니다.
- 서버를 재시작합니다.
- ulimit -a 명령어로 core dump 파일 사이즈를 확인합니다.
core dump 파일 위치 및 이름 규칙 설정하기
옵션 정보
%p: pid
%: '%' is dropped
%%: output one '%'
%u: uid
%g: gid
%s: signal number
%t: UNIX time of dump
%h: hostname
%e: executable filename
%: both are dropped
- echo "/tmp/core.%e.%p.%t" > /proc/sys/kernel/core_pattern 를 실행을 사용하여 실행파일, PID, UNIX time으로 dump파일을 생성할 수 있습니다.
core dump 파일 backtrace 확인하기
core dump 테스트를 위해서 vi로 에디트 중인 프로세스를 강제로 core dump파일을 생성하여 backtrace를 확인하였습니다.
- 콘솔에서 vi test.log로 특정 파일을 에디트 합니다.
- ps -ef | grep vi 를 통해서 프로세스의 PID를 확인합니다.
- 다른 콘솔에서 kill -3 <PID> 명령어로 강제로 덤프파일을 떨어뜨립니다.
- gdb <실행파일> <core dump 파일> 명령을 실행합니다.
- gdb환경에서 bt명령어를 실행합니다.