2012-03-02 9 views
0

私は過去2時間のこの質問に対する回答を探しています。私はそれに13,000 +電子メールメッセージを持っている1つのメールボックスを持つsendmailサーバーを持っています。今日、ユーザーはOutlookを開いて、以前はOutlookですでにダウンロードされていたものの、すべて13,000を複製していても、これらのメッセージをすべてダウンロードし始めました。ありがたいことに、彼女は約1,000のダウンロードマークでOutlookを閉じました。ユーザーはOutlookで「20日後にサーバーから削除」を設定します。sendmailサーバー上の電子メールメッセージを削除する方法は?

このユーザーのメールボックスで、2月11日から2月29日の間にすべてのメッセージをコマンドラインから削除する必要があります。私はキューからメッセージを削除する方法を知っていますが、電子メールメッセージファイルがどこにあるのかわからないので、メールボックスからは削除できません。

本当に助けてもらうか、私に正しい方向を教えていただきありがとうございます。

ありがとうございました!

+0

どのようなメールサーバーですか?これは交換ですか? –

+0

"sendmail"を実行しているCentOSサーバー。 – Spencer

+0

よかった! :P、私はcentosでデフォルトのMTAを使っている経験はありませんが、私はPostfix/courier setupを使います。各ユーザのmaildir(この場合〜/ .maildir)には、送信済みメッセージとcur、tmp、すべての電子メールを格納する新しいフォルダとサブフォルダを含む.Sentフォルダがあります。古い電子メールはcurフォルダに保存されています。私はこれがあなたを正しい道に導いてくれることを願っていますが、sendmailのmaildir構造が近いとは限りません。 –

答えて

0

通常の設定では、sendmailはメールを/ var/spool/mail/[username]のユーザに送ります。このファイルは、ユーザーをつなぎ合わせたすべてのメッセージです。 (各メッセージは "From"から始まる行で始まります)

私はあなたが/etc/sendmail.cfを見て確かに言うことができると思います。 "Mlocal"を開始する行を探します。これは、ローカル電子メールの配信方法を示しています。行の "P ="部分は、どのプログラムが作業を行うかを示します。私はCentOSが現在/ usr/bin/procmailを指定していると思いますが、もしユーザーが〜/ .procmailファイルを持っていなければ、上記で説明したことをします。

/var/spool/mailファイルを/ partition内の別のディレクトリに移動するだけで、ファイルシステム内のmvがカーネルレベルでアトミックなので安全です。それで、あなたは望みどおりにファイルを編集することができます。 sendmailが別のメッセージを送信しているのと同じ時にそれを行うかもしれないので、編集したファイルを戻すのがやや難解です。最も安全な方法は、sendmailを停止し、保持したいメッセージを/ var/spool/mail/[user]に連結することです。存在しない場合は、戻してください。その後、sendmailを再起動します。

関連する問題