리눅스에서 프로그램이 비정상적으로 죽었을때 디버깅을 할수있게 생성해주는 core 파일을 남기도록 설정하기.
개발하고 테스트 중인 프로그램이 장렬하게 core 가 나면서 전사 하셨는데,
어디서 죽으셨는가 하고 gdb 로 디버깅을 해보려 하니
그 흔한 core 파일조차 남기지 않고 죽어버렸네요.
그래서 조금 검색해보니 바로 나온 답..
#> ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 16346
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 16346
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
저기 빨간 부분이, core 파일 사이즈에 대한 부분인데 0 으로 되있으니..
생성이 되지 않습니다.
#> ulimit -c unlimited // core 파일 사이즈 변경 명령어.
#> ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 16346
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 16346
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
ulimit 명령어로 -c 옵션을 주고 변경할 사이즈를 입력하면 손쉽게 변경이 됩니다.
unlimited 는 제한을 두지 않는걸 말합니다.
아..그리고 이미 실행중인 상태의 프로세스는 적용이 되지 않습니다.
( 물론 되게 하는 방법이 있겠지만.. 찾아보진 않았네요 ^^;; )
그리고 이렇게 명령어를 통해 변경하는건 재부팅을 하면 그대로 ~ 다시 초기화 되므로
계속 !! 그상태를 유지하고 싶으시다면
/etc/profile <- 요 파일을 수정하시면 됩니다.
ulimit -s -c 0 이런식으로 들어가 있으니 찾아보시면 되요 ~
그리고 더 간단한 편법은
bash등의 쉘을 사용하실경우
.bash_profile ( 쉘 프로파일 )안에다
ulimit -c unlimited
요걸 적어두시면 쉘 접속할때마다 알아서 ~ 코어 파일 생성하게끔 변경 되니까
어느 한 계정만 계속 떨구고 싶으시다면,
요런 방법 사용해도 됩니다 ~
끄읏..
'OS > 리눅스' 카테고리의 다른 글
[리눅스] yum ERROR:Cannot retrieve repository metadata (repomd.xml) for repository: (0) | 2014.05.28 |
---|---|
[리눅스] IP 변경하기 ( 파일 수정 ) (0) | 2014.05.28 |
[리눅스] kerberos 사용하지 않기 설정. (0) | 2014.05.28 |
[리눅스] WireShark 설치 방법. (0) | 2014.05.28 |
[리눅스] CentOS CD 파일 다운로드 방법. (0) | 2014.05.28 |