正確には以下のメッセージ。
sendmail[24334]: NOQUEUE: SYSERR(apache): can not chdir(/var/spool/clientmqueue/): Permission denied
これは手ごわかった。
そもそもLinuxマシーンにバグトラッカーのMantisを入れてたんだった。
adminで新規ユーザを追加するとそのユーザにメールが飛ぶはずなんだがなぜか飛ばない。
/var/log/maillogを見ると上記エラーだったというわけです。
chdirできないなら単にディレクトリのパーミッションじゃん、と思って調べたのだがどうも間違ってはいない模様。
結局その日は直すのあきらめて次の日改めて調べてみたら/var/log/messagesに答えがあった。
SELinux is preventing the http daemon from sending mail. For complete SELinux messages. run sealert -l 9a1934de-f8df-46a5-9706-5044d8795fc3
なんとSELinuxだったのだ。
なんというセキュリティ魂!
以下のコマンドを叩いてみると謎が解けた。
% sealert -l 9a1934de-f8df-46a5-9706-5044d8795fc3
(中略)
If you want httpd to send mail you need to turn on the httpd_can_sendmail
boolean: "setsebool -P httpd_can_sendmail=1"
まあ、これだけじゃ終わらなかったんだが、犯人はSELinuxに決定ってことで。
これ、ググってもわからなかったんだよなあ。