2011-03-25 80 views
15

我每天都通過crontab在我的mybookworld(NAS)上運行一個scipt。如果它能夠每天向我發送一封包含腳本輸出的電子郵件報告,那就太好了。mailto crontab不起作用

所以我看着crontabs的MAILTO,但它根本不給我任何東西。該腳本在正確的時間正確運行,但沒有電子郵件。 這是我的crontab:

~ # crontab -l 
[email protected] 

0 0 * * * python /root/erepCrawler/src/main.py 

我寫了一個「小」的crontab測試原因:

[email protected] 
* * * * * echo "blaah" 

這應該每分鐘用「blaah」作爲身體的電子郵件發送給我嗎?如果我錯了,請糾正我:)

是否有其他包需要用crontab發送郵件? sendmail安裝在/ opt/sbin/sendmail中。

問候

+6

我想你沒有設置適當的郵件傳輸代理,是嗎?您能否通過命令行發送郵件,例如'回聲測試| mail -s測試x.y @ googlemail.com' – bmk 2011-03-25 21:38:44

+1

我認爲你是對的。甚至沒有安裝名爲mail的東西。經過一番谷歌搜索後,我正在嘗試在Nas上安裝postfix。有了這個,我應該工作嗎? – Graslandpinguin 2011-03-26 03:13:51

+0

如果postfix配置正確(尤其是中繼服務器等),它應該工作。 – bmk 2011-03-26 17:04:36

回答

7

應該在cron的工作與以下修改:

MAILTO="[email protected]" 
* * * * * echo blaah 

作品我的服務器上,剛剛測試。

+0

嗯,我認爲這不是重點(見bml的評論),但是很高興知道,如果郵件正確安裝,echo「blaah」'工作正常:)感謝幫助 – Graslandpinguin 2011-03-26 03:15:33

+1

是需要引號?我試圖調試我的問題。 – crh225 2013-04-01 14:27:40

+1

行情不需要,以下是完全有效的 MAILTO = email1 @ domain.com,email2 @ domain.com – zsoobhan 2014-12-16 11:19:40

0

花費了幾個小時的調試後,爲什麼這不與我的Debian框中的nullmailer一起工作,我發現我在gmail上有一個過濾器,可以將所有內容從cron發送到「All Mail」,而無需通過我的收件箱...只需要檢查。

0

我不得不把它添加到/etc/hosts使郵件到我的服務器的FQDN自己會有人來解決:

127.0.0.1 mydomain.com.

注意點底。在我的情況下,我發送的電子郵件實質上是根目錄@ localhost與MAILTO=root,將其轉換爲[email protected]

Here's some more detail on this answer.