Cron
將 cron 預設發送郵件更改為郵件
我正在執行 FreeBSD 11.0-RELEASE。
預設 cron
/usr/lib/sendmail
用於發送使用者電子郵件。我如何告訴/設置 cron 來/bin/mail
代替使用?FreeBSD 使用 Paul Vixie 的 cron 版本,因此該
-m
選項設置電子郵件接收器而不是使用哪個郵件程序。我下載了 FreeBSD 原始碼並嘗試了中的命令
# make config
,/usr/src/usr.sbin/cron/
由於未定義配置,因此 ofc 不起作用。但我認為這是一個壞主意,因為未來的更新很容易覆蓋這個?謝謝你的幫助!
cron
預設情況下,使用系統範圍_PATH_SENDMAIL
宏的值作為 的擴展MAILCMD
,該命令用於發送作業生成的消息。為了使用不同的郵件程序,您需要修改 Makefile 來為MAILCMD
和MAILARGS
宏定義適當的值。原始碼樹中的 Makefile 包含說明可能值的註釋定義,但在定義MAILARGS
為時適用的宏中似乎存在一個小錯誤- 它有兩個字元串擴展,但在呼叫時只接收一個字元串,所以在更新檔中在要點中,我刪除了第一個擴展。MAILCMD``/bin/mail
如果您安裝了該
patch
實用程序(如果沒有,它在埠中),應用此更新檔(相對於/usr/src/usr.sbin/cron
)並建構/安裝 cron:% cd /usr/src/usr.sbin/cron % make % make install
重新啟動 cron,你現在應該使用
/bin/mail
. 注意這個更新檔版本在我的系統(11-STABLE)上乾淨地建構,但我沒有嘗試使用它來代替預設版本。請記住,升級時您可能需要再次執行此操作,因為 FreeBSD 預設使用/usr/lib/sendmail
.