
別のスクリプトのバグにより、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