OS/LINUX

[Tips] core 파일 생성법

투칼론 2016. 6. 13. 16:53
반응형

core 파일은 리눅스에서 에러를 분석하고 디버깅하는데 사용된다.

프로그램이 세그먼트 폴트(segment fault) 등 오류가 발생했는데도 core 파일이 생성되지 않는다면 관련 커널 파라미터를 확인하고, 재설정이 필요하다.


core 파일 설정 확인


 # ulimit -c


위의 명령어는 생성되는 core 파일 최대 크기를 출력한다.

예를들어, 결과가 0 이면 core 파일이 생성되지 않는다.


core 파일 최대 크기 설정


 # ulimit -c 1024000

최대 1G 바이트 크기의 core 파일 생성 가능


 # ulimit -c unlimited

무한대 크기의 core 파일 생성 가능



구성 파일을 통한 core 파일 최대 크기 설정


계속적으로 core 파일을 생성시키기 위해서는 /etc/profile 파일을 수정한다.


 # ulimit -S -c 0 > /dev/null 2>&1


대신에 unlimited로 설정한다.

 # ulimit -c unlimited > /dev/null 2>&1

 


core 파일 이름 및 상세 설정


/etc/sysctl.conf 파일에서 다음 파라미터 수정한다.


kernel.core_uses_pid = 1

kernel.core_pattern = /tmp/core-%e-%s-%u-%g-%p-%t

fs.suid_dumpable = 2


위의 파일을 수정한 후, 설정을 리로드하기 위해서는 다음 명령어를 실행한다.


 # sysctl -p