2011-04-29 5 views
3

우분투 리눅스 10.0.4를 사용하고 있습니다. 매일 6 시간마다 스크립트를 실행하고 싶습니다.cron 작업을 테스트하는 방법은 무엇입니까?

# m h dom mon dow command 
* 00,06,12,18 * * * /opt/scripts/selenium/run_nis_inf_tests.sh 

그러나, 나는 내 스크립트에서 예상되는 결과를 확인할 수 없습니다, 그리고 나는 그것의 실행중인 경우에도 확실하지 않다 : 나는 sudo crontab -e을 실행하면, 나는 참조하십시오. 지정된 시간까지 기다리는 것이 부족하여 스크립트가 제대로 실행되고 있는지 테스트 할 수있는 방법이 있습니까? 또는 스크립트가 생성하는 오류를 어떻게 볼 수 있습니까? - Dave

+0

또한 cronjob의 파일 이름에주의하고 밑줄이나 확장자를 피하십시오. 예를 들어 데비안과 같은 우분투 (Debian)의 경우, 나는 [여기] (http://stackoverflow.com/questions/5486601/linux-debian-crontab-job-not-executed)에 설명 된대로이 문제에 직면했다. – hornetbzz

답변

4

MAILTO 변수를 전자 메일 주소로 업데이트 할 수 있으며 cron은 STDOUT 및 STDERR 출력을 전자 메일로 보내야합니다. 또한 syslog 파일/var/log/messages를 검사하여 스크립트가 cron에 의해 실행되고 있는지 확인하십시오.

- 토니

+0

/var/log/messages에 항상 성공/실패 메시지가 기록됩니까? 그렇다면 내 cron에 대해서는 아무것도 포함되어 있지 않습니다. 이는 실행 중이 아님을 나타냅니다. 내 컴퓨터에 이메일이 아직 설정되지 않았으므로 그걸 알려주고 무엇이 흔들리는 지 보겠습니다. – Dave

+0

/var/log/messages에는 아무 것도 쓰이지 않지만 crontab 행 위에 MAILTO 변수를 추가하면 내가 찾던 피드백을 얻을 수 있습니다. - Dave – Dave

1

Cron은 결과를 메일로 보내야 문제가있는 것처럼 보입니다.

00,06,12,18 * * * user_name /opt/scripts/selenium/run_nis_inf_tests.sh 

는 스크립트가 실행해야하는 사용자의 이름 USER_NAME 교체 "run_nis_inf_tests.sh"의 권한을 확인하고해야 : 여기 , 당신이 스크립트를 실행하는 사용자를 누락 보인다 괜찮아.

+0

사용자 이름을 추가하여 제안을 시도했을 때 "/ bin/sh : selenium : not found"오류가 발생했습니다. 내가 사용하는 구문은 "00 */1 * * * /opt/scripts/selenium/run_nis_inf_tests.sh"입니다. – Dave

+0

예 죄송합니다. crontab -e처럼 사용자 이름이 필요하지 않습니다! syslog.conf를 확인 했습니까? – mecano

관련 문제