2010-02-16 4 views
0

Это не технический вопрос программирования, но, возможно, кто-то может мне помочь. Да, это совершенно не по теме, но я отчаянно нуждаюсь в помощи, поскольку я не эксперт в этом вопросе.postfix re-processing spool - ubuntu

У нас возникли проблемы с нашим почтовым сервером в выходные дни и после обновления postfix, я заметил, что почта больше не доставлялась в/home/$ user/Maildir /, как определено картой alias. Мы теперь исправили это, и почта доставляется, но предыдущая почта, которая не была доставлена ​​в почтовые ящики, складывалась в катушку в/var/mail как плоские файлы, содержащие данные электронной почты.

Я бы хотел получить постфикс (или любую другую программу ... из postfix, я использую procmail для фильтрации), чтобы снова пройти эти файлы и доставить их в соответствующий почтовый ящик. Я пробовал «postqueue -f», но ничего не сделал. «mailq», очевидно, говорит, что почтовая очередь пуста.

Может ли кто-нибудь помочь? :)

ответ

1

Ничего, проблема решена, надеюсь, это поможет кому-то еще. После долгих поисков, это метод, который работает. Ваши пути могут быть разными.

Это зависит от пользователя, в зависимости от того, как настроен ваш сервер. Поэтому, если у вас несколько пользователей. Итак:

1) Войти как пользователь. Я назвал мой тестовый пользователь 'testytest' ... не спрашивайте

cp /var/mail/testytest ~/send-testytest 
cat ~/send-testytest | formail -s procmail 
rm ~/send-testytest 

2) Войти как корень

rm /var/mail/testytest 

Это должно работать. Надеюсь, это поможет любому, кто борется с этим!

Сначала мы создаем копию файла почтового спула, о котором идет речь. По-видимому, это предотвращает бесконечный цикл обработки. Мы читаем весь почтовый файл, а затем мы используем formail, который поставляется с procmail, для повторной обработки. Затем он будет использовать procmail для распространения, как обычно. :)

+0

Thankyouthankyouthyankyou! Вы не представляете, насколько я пережил это решение - я думал, что потерял неделю важных писем, и это решило. Я бы наградил щедростью, если мог. –

+0

Ага - только что понял, как ... но мне потребуется 24 часа, чтобы получить его. –