- Ubuntu Jaunty 伺服器 (9.04)
- 純FTPD 1.0.21-11.4ubuntu1
- 雜種狗1.5.18-6ubuntu1
當我的 FTP 使用者上傳檔案時,我需要收到電子郵件通知。
我使用 pure-uploadscript 來執行此操作。下面的程式碼設定為從我自己的(非超級)用戶運行:
#! /bin/bash
echo "File $1 (size $UPLOAD_SIZE) uploaded by $UPLOAD_VUSER \
on $(date)" \
| /usr/bin/mutt -s "[FTP] File uploaded: $1" \
[email protected] 2>&1 >> path/logfile \
&& echo "OK $1 $(id)" >> path/logfile \
|| echo "ERR $1 $(id)" >> path/logfile
我的腳本被調用,$(id) 顯示正確的數據,但 mutt 說(正如我從日誌中看到的)「無法發送訊息。」。
當我從自己的用戶的命令列運行相同的命令時,會發送訊息。
我可以做什麼來調試這個?
答案1
Mutt 可能正在尋找 sendmail 指令的錯誤位置。
:set sendmail
從 mutt 內部為您提供 mutt 正在尋找的位置。它也可用於設定正確的位置,例如:set sendmail="/usr/sbin/sendmail"
順便說一句,mutt 是一個很棒的程序,但nail
或mailx
通常是腳本中使用的首選工具。