메뉴 건너뛰기

리눅스 관련 모음

본문시작

조회 수 38184 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

국산 통나무 수공예 남원제기, 남원목기

자료가 도움이 되셨다면
혼수용품제수용품 필요시
남원제기 공식 홈페이지 http://남원제기.kr
남원목기 공식 홈페이지 http://otchil.kr
에서 구매 해 주세요
정성껏 모시겠습니다.
 

아파치 프로세스가 가끔씩 또는 자주 error log에 segmentation fault 메세지를 남기면서 죽는 경우는 보통 아파치 모듈에 에러가 있는 경우입니다.
보통 아파치는 여러 개의 모듈이 로딩되고 모듈 자체에서 다시 외부 모듈을 호출하는 경우도 있기 때문에 디버깅을 하기가 쉽지 않습니다.

아파치 프로세스가 죽으면서 error log에 아래와 같은 메세지를 남깁니다.
[Thu Jul 03 16:41:43 2008] [notice] child pid 26827 exit signal Segmentation fault (11)

core 파일 생성을 위해서 httpd.conf 에 아래 내용을 추가합니다.
CoreDumpDirectory /tmp # core 파일을 /tmp에 생성

이제 아파치 프로세스가 죽게되면 error log 메세지가 아래와 같이 바뀌고 /tmp 디렉토리에 core 파일이 생성됩니다.
[Thu Jul 03 17:09:05 2008] [notice] child pid 27723 exit signal Segmentation fault (11), possible coredump in /tmp

만약 core 파일이 생성되지 않을 경우에는 아파치 데몬 소유자의 core limit을 변경해 줍니다. (bash shell에서)
ulimit -c unlimited

이제 gdb를 실행합니다.
gdb /usr/local/httpd/bin/httpd /tmp/core

관련된 파일이 로딩되고 나면, back trace로 어디서 문제가 생겼는지 확인합니다.
(gdb) bt
#0  0x4019f6bf in chunk_free (ar_ptr=0x402537a0, p=0xffffffec) at malloc.c:3226
#1  0x4019f424 in __libc_free (mem=0x82320e4) at malloc.c:3155
#2  0x406b00c3 in zif_zend_aescryptstring () from /usr/local/libexec/api/libaesapi.so
#3  0x405947b3 in execute (op_array=0x825df24)
    at /usr/local/libexec/wwwsrc/php-4.4.4/Zend/zend_execute.c:1675
#4  0x40594957 in execute (op_array=0x825ddd4)
    at /usr/local/libexec/wwwsrc/php-4.4.4/Zend/zend_execute.c:1719
#5  0x40594957 in execute (op_array=0x825da0c)
    at /usr/local/libexec/wwwsrc/php-4.4.4/Zend/zend_execute.c:1719
...

여기서는 zend_aescryptstring 가 php 확장 모듈이기 때문에 3번 프레임의 내용을 확인합니다.

(gdb) frame 3
#3  0x405947b3 in execute (op_array=0x825df24)
    at /usr/local/libexec/wwwsrc/php-4.4.4/Zend/zend_execute.c:1675
1675    /usr/local/libexec/wwwsrc/php-4.4.4/Zend/zend_execute.c: No such file or directory.
        in /usr/local/libexec/wwwsrc/php-4.4.4/Zend/zend_execute.c
(gdb) print (char *)executor_globals.active_op_array->filename (해당 모듈을 호출한 php 파일을 출력합니다.)
$1 = 0x8252e8c "/usr/local/mainwww/webII/lib/class.CryptCookie2.php"
(gdb) print (char *)executor_globals.active_op_array->function_name
$2 = 0x8259c5c "_decrypt" (php 파일 내에서 모듈을 호출한 함수 이름)
(gdb) print (char *)(executor_globals.function_state_ptr->function)->common.function_name
$3 = 0x406b04c0 "zend_aescryptstring" (php 모듈의 함수 이름)

이제 문제가 된 zend_aescryptstring 함수를 찾아서 디버깅하면 됩니다 ^^


참고 자료:
http://bugs.php.net/bugs-generating-backtrace.php
http://httpd.apache.org/dev/debugging.html

   

  1. ssh로 특정 ip접근 hosts.deny 자동 추가

    Date2011.05.12 By햇빛소년 Views45290
    Read More
  2. crontab 설정

    Date2011.05.12 By햇빛소년 Views45049
    Read More
  3. 리눅스 관리자가 알아두어야 할 50가지

    Date2011.05.12 By햇빛소년 Views60840
    Read More
  4. 리눅스 시스템정보 알아내기

    Date2011.05.12 By햇빛소년 Views47998
    Read More
  5. 서버설치후 해야할 일

    Date2011.05.12 By햇빛소년 Views44096
    Read More
  6. 실제 예(passwd명령어)로 SetUID, SetGID 이해하기

    Date2011.05.12 By햇빛소년 Views50478
    Read More
  7. Iptables 간략 사용하기

    Date2011.05.12 By햇빛소년 Views65475
    Read More
  8. 공기정화 식물을 키워라!

    Date2011.05.19 By햇빛소년 Views36768
    Read More
  9. 내년부터 시험없이 국가기술자격 딴다

    Date2011.05.19 By햇빛소년 Views40541
    Read More
  10. 유동아이피를 고정아이피로 만들기

    Date2011.06.20 By햇빛소년 Views38319
    Read More
  11. 윈도우에서 내 컴퓨터 ip주소 확인하기

    Date2011.06.20 By햇빛소년 Views38099
    Read More
  12. su 명령의 문제점

    Date2011.10.04 By햇빛소년 Views54657
    Read More
  13. chattr, lsattr

    Date2011.10.05 By햇빛소년 Views41615
    Read More
  14. segmentation fault가 발생할 때 디버깅 방법

    Date2012.01.05 By햇빛소년 Views38184
    Read More
  15. convert: error while loading shared libraries: libMagick.so.10: cannot open

    Date2012.02.20 By햇빛소년 Views29870
    Read More
  16. specifies multiple packages 대처법

    Date2012.02.22 By햇빛소년 Views27959
    Read More
  17. Apache 2.4.1 소스설치시 에러에 대한 해결

    Date2012.02.26 By햇빛소년 Views58527
    Read More
  18. ClamAV 0.97.4 버전으로 새로 컴파일 하여 업데이트 한후 에러발생 해결...

    Date2012.04.29 By햇빛소년 Views28720
    Read More
  19. Starting spamd: Apr 29 16:41:34.934 [14162] warn: server socket setup failed, retry 1: spamd: could not chown 에러해결

    Date2012.04.29 By햇빛소년 Views32110
    Read More
  20. cpan 으로 설치힌 perl 모듈의 검색과 삭제...

    Date2012.05.10 By햇빛소년 Views30042
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 Next
/ 10