테스트 사이트 - 개발 중인 베타 버전입니다

리눅스(centos) 질문 입니다;; 프로세스 자동으로 죽이기요.. 채택완료

인메모리 9년 전 조회 3,432

 

php 프로그램을 백그라운드에서 실행을 시키는데요;; 이놈이 참.....

어쩌다가 한번씩 말썽입니다.. 가만히 있으면 10시간도 프로세스를 잡고 있어요ㅠㅠ

 

for문도 없습니다ㅠㅠ

 

왜 안꺼지는지 모르겠어요..

 

htop로 모니터링을 제가 계속 하는데요..

오래 잡고 있으면.. 제가 강제로 종료는 시키구요..

 

crontab을 사용해서 오래 붙잡고 있는 프로세스는 강제로 자동으로 종료 시키는 방법이 있을까 하여 글 남겨 봅니다.

 

예를들어서.. 조건이요..

 

1시간이 넘도록 프로세스를 잡고 있으면 강제 kill

 

이런식으로 말이지요..

 

 

힌트만 주셔도 막 찾아보겠습니다~ 결국에는 쉘을 써야하는데요..

고민이 많습니다ㅠㅠ 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트

다음과 같이 해보는 것은 어떨까요...

 

1. /etc/cron.hourly 디렉토리에

any_stop.sh 파일을 다음과 같은 내용으로 하나 만드세요.

======================= any_stop.sh =======================

#!/bin/sh

 

#아래의 killProg는 종료시켜야 할 프로그램 이름

PGM_NAME=killProg
Cnt=`ps -ef|grep $PGM_NAME|grep -v grep|grep -v vi|wc -l`
PROCESS=`ps -ef|grep $PGM_NAME|grep -v grep|grep -v vi|awk '{print $2}'`

 

if [ $Cnt -gt 0 ] ; then
    kill -9 $PROCESS
fi

=====================================================

 

2. /etc/crontab 에 아래의 내용을 추가하세요.

# run-parts : 1시간 마다 /etc/cron.hourly 디렉토리내에 존재하는 파일들을 실행
01 * * * * root run-parts /etc/cron.hourly 

 

----------------------------------------------------

참고 사이트 : http://fruitdev.tistory.com/9">http://fruitdev.tistory.com/9

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인