他のスクリプトのバグのため、var/spool/mqueueに1000個のメッセージがあります。
メッセージの送信を防ぐには、/var/spool/mqueueを削除する必要があることをどこかで読みました。
残念ながら、sendmailはこれを実行した後にメールを送信できないようです!メールを送信しようとしても受信できません。
mailq を実行すると、次のような結果が出力されます。
MSP Queue status...
/var/spool/mqueue-client (4 requests)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
sAID7J0d003724 13 Tue Nov 18 13:07 me
(Deferred: 421 4.3.0 collect: Cannot write ./dfsAID7JS9003725)
[email protected]
sAID998F003775 15 Tue Nov 18 13:09 me
(Deferred: 421 4.3.0 collect: Cannot write ./dfsAID99Xx003776)
[email protected]
sAID7sxW003748 116 Tue Nov 18 13:07 me
(Deferred: 421 4.3.0 collect: Cannot write ./dfsAID7sQr003749)
[email protected]
sAID6QO1003700 117 Tue Nov 18 13:06 me
(Deferred: 421 4.3.0 collect: Cannot write ./dfsAID6Qda003701)
[email protected]
Total requests: 4
MTA Queue status...
/var/spool/mqueue is empty
Total requests: 0
me@mycomp:/var/spool/mqueue$
どうすれば解決できますか?
編集:私は通常以下を介してメールを送信します:
echo "My message" | sendmail [email protected]
答え1
次のコマンドを使用してディレクトリを作成します。
mkdir /var/spool/mqueue
mqueueディレクトリに正しい権限があることを確認してください。
chown root:mail /var/spool/mqueue
その後、Sendmail を再起動します。
service sendmail restart