crontab에서 mail 명령어 사용
글쓴이: kisang82 / 작성시간: 금, 2014/05/09 - 11:55오전
crontab에 테스트로 아래 한줄을 넣었습니다.
*/1 * * * * root `/root/test.sh | mail -s "test" <a href="mailto:abc@abc.abc" rel="nofollow">abc@abc.abc</a>`
그리고 test.sh파일에는 아래 두줄을 넣었습니다.
#!/bin/sh echo "test mail"
그런데 아무리 해도 메일이 오지 않습니다.
*/1 * * * * root `/root/test.sh | /bin/mail -s "test" <a href="mailto:abc@abc.abc" rel="nofollow">abc@abc.abc</a>`
해당 커멘드를 직접 입력하면 메일이 잘 발송됩니다.
국내외 웹을 다 뒤져 보았지만 도움을 얻지 못했습니다.
이런경우 100% 환경변수 문제라고 하는데 어떻게 그 문제를 해결해야 할지 감을 잡지 못해서 여러님들의 도움을 얻고자 합니다. ㅠㅠ
Forums:
crond 재시작은
crond 재시작은 하신거지요?
/var/log/messages 따위를 확인해보시거나, test.sh 안에 다른 디버깅이 필요해보입니다.
어차피 echo는 출력 안될테니까 이를테면 파일을 생성한다던지..
소곤소곤
댓글 감사합니다.^^
다른곳에 문제가 있었습니다.
로그를 다 뒤져도 에러가 없어서, 혹시나 작동은 되는데 메일을 받지 못하는 문제가 아닐까 싶어서 메일 로그를 보았는데 역시나 메일이 돌아오고 있었습니다.
원인을 살펴보니 시스템에서 보내는 메일이 보내는 주소가 "localhost.localdomain"으로 되어있어서 그랬습니다.
그래서 http://www.talkdev.net/hostname-%EB%B3%80%EA%B2%BD/ 사이트를 보고 hostname을 변경해주니 메일이 아주 잘 발송 되었습니다.
환경변수 문제도 아니고 단지 호스트명이 문제였습니다.
이제 메일 발송 문제는 해결 했는데, 보낸 메일이 스펨으로 분류되는 문제를 해결해야 하네요.^^;;
댓글 달기