1. core dump 파일사이즈 limit 변경

$ ulimit -c unlimited

이러면 core dump 파일사이즈의 제한이 없어진다. 하지만 이는 매번 로그인할 때마다 바뀌므로 영구적인 변경을 위해서는 /etc/security/limits.conf에 다음 line 추가한다.

*               soft    core            unlimited

*               hard    core            unlimited

(제일 왼쪽에는 계정id가 들어감. 모든 계정에 대해서는 *)


2. core_pattern 등록

echo "/tmp/core.%e.%p.%h.%t" > /proc/sys/kernel/core_pattern

or

sysctl -w kernel.core_pattern=/tmp/core.%e.%p.%h.%t

이런 식으로 어느 위치에 저장할 건 지 + 파일명의 format은 어떻게 할 건지 지정해준다.

포맷은 다음과 같다.

%p: pid

%u: uid

%g: gid

%s: signal number

%t: dump된 시간 (UNIX timestamp)

%h: hostname

%e: 실행파일명


근데 이는 재부팅마다 초기화된다. 구글링해본 결과 /etc/sysctl.d에 10-core-dump.conf를 만든 뒤 다음 line을 추가한다.

kernel.core_pattern=/tmp/core.%e.%p.%h.%t

하지만 Ubuntu 14.04기준 이도 재부팅되면 초기화된다. 영구적으로 만드는 것은 천천히 알아봐야겠다.

+ Recent posts