cron 으로 wget을 수행할 때의 문제

findstar의 이미지

현재 cron으로 하루에 한번씩 wget을 수행중에 있습니다.

######################################################
#!/bin/sh
/usr/bin/wget http://test.net/xml_generate.php -O /tmp/test_xml
date >> /tmp/xml_cronlog
######################################################

위 내용을 XML_GENERATE 라고 하고

crond.daily 아래에 위치시켰습니다.

문제는 cron으로 해당 파일이 수행은 되는데

wget이 정상적으로 수행이 되지 않는것 같습니다.

tmp/xml_cronlog 에 매일 한번씩 수행된 date는 찍히는데

xml_generate.php의 결과물인 xml파일이 생성이 안됩니다.

xml_generate.php 파일 내부에

system("echo try make daum_" . date("Ymd",$nowTime). ".xml on " . date("Y-m-d H:i:s",time()). " >> xml_generate.log");

라고 넣어놨는데 위 구문도 수행이 안되네요..

cron으로 wget을 동작시키는데 왜 wget에서 해당 파일을 얻지를 못할까요..

하루에 한번씩 수행되는건데 왜 안되는건지..

의문이 듭니다.

혹 저와 같은 문제를 겪으신 분이나 해결방법, 또는 원인을 아시는 분은 조언부탁드리겠습니다.

findstar의 이미지

자문 자답이군요

cron 내부의 라인 끝에

-O /dev/null >> /tmp/xml_generate_php_log.cat 2>&1 라고 추가해 보았습니다.

문제는 nameserver 쪽과 관련 있더군요

해당 도메인을 찾아올 때가 있고 못찾을 때가 있어서

결과적으로 해당 wget이 정상적으로 동작하지 못했던 것입니다.

/etc/hosts에 로컬 도메인에 대한 내용을 추가해서 해결했습니다.

혹시나 같은 문제 겪으시는분 (지인 한분이 저와 같은 문제를 겪으셔서 해결책을 알려드렸더니 좋아하시는군요)

은 위와 같이 해결하시면 됩니다.. 모르면 삽질이죠 ㅡㅡ;/