#title RHEL 과 CentOS 에서 Coredump 를 남기기 위한 방법 [[TableOfContents]] * 작성: 김정균 = 대상 = * RHEL 4 / CentOS 4.x * RHEL 5 / CentOS 5.x * RHEL 6 (미확인) = 커널 설정 = * /etc/sysctl.conf 에 '''''kernel.suid_dumpable = 1''''' '''''kernel.core_uses_pid = 1''''' (default 값임) '''''kernel.core_pattern = /tmp/core/core''''' 로 를 입력한 후에, '''sysctl -p''' 명령으로 커널 파라미터 수정을 반영한 다음 {{{ mkdir -p /tmp/core chmod 777 /tmp/core }}} 설정을 해 준다. * RHEL 5 / CentOS 5 에서 (kernel 2.6.18 이후..) '''''kernel.suid_dumpable = 1''''' 이 '''''fs.suid_dumpable = 1''''' 으로 변경됨 = Shell에서의 coredump = * /etc/bashrc 의 26라인 즈음.. '''ulimit -S -c 0 > /dev/null 2>&1''' 설정에 의해 core 를 남길 수 없음 * ~/.bashrc 에 '''ulimit -c unlimited >/dev/null 2>&1''' 를 넣어서 해결을 함. 수정 후, 재로그인이 필요함. * 현재 세션에서만 적용을 하고 싶다면 현재 세션에서 위의 명령을 그냥 실행하면 됨. = init script = * /etc/sysconfig/init 에 '''DAEMON_COREFILE_LIMIT='unlimited'''' 을 설정해 줌 * /etc/sysconfig/init 에 반영할 경우, init script 로 시작하는 모든 데몬이 반영이 되며, 만약 특정 데몬만 필요하다면, 각 init script 에서 {{{. /etc/init.d/functions}}} 를 호출하기 전에 위의 설정을 넣어 주면 됨.