[완료] core file 생성 시 core 파일이름에 pid 삭제 방법
글쓴이: lee3390 / 작성시간: 화, 2009/10/20 - 3:36오후
안녕하세요. 리눅스를 사용하던 도중 해결이 안되는 문제가 생겨서 질문을 올리게 되었습니다.
core file pattern을 core. 형식으로 생성되게 하려고
/etc/sysctl.conf 파일에
kernel.core_pattern = core.%e
kernel.core_uses_pid = 0
이와 같이 설정을 해놓고 적용을 하였습니다.
[root@devlinux ~]# sysctl -A | grep kernel.core kernel.core_pattern = core.%e kernel.core_uses_pid = 0 [root@devlinux ~]# cat /proc/sys/kernel/core_pattern core.%e [root@devlinux ~]# cat /proc/sys/kernel/core_uses_pid 0
그리고 실제로 core가 떨어지게 코딩하여 실행하면 core. 형식으로 core file이 만들어집니다.
그런데 background나 어떤 특정 상황에서 다른 shell에서 kill을 시키면 core..pid 형태로 core파일이 만들어지네요
cat threader.c
#include <pthread.h> static void* thread_sleep(void* x) { while (1) sleep(30); } int main(int c, char** v) { pthread_t thr[5]; int i; for (i=0; i<5; ++i) pthread_create(&thr[i], NULL, thread_sleep, NULL); while (1) sleep(30); return 0; }
[astrix@devlinux:~]$ gcc threader.c -l pthread [astrix@devlinux:~]$ ./a.out & [1] 4096 [astrix@devlinux:~]$ kill -11 4096 [astrix@devlinux:~]$ ls a.out core.a.out.4096 threader threader.c [1]+ 세그멘테이션 오류 (core dumped) ./a.out
이러한 상황에서도 core file을 core. 으로만 나오게 설정하는 방법 알려주세요
부탁드립니다.
Forums:
man core(5) 에
OTL
헉.. 그럼 방법이 없는거네요 ㅠ.ㅠ
헉.. 그럼 방법이 없는거네요 ㅠ.ㅠ
이런... ㅠ.ㅠ
댓글 달기