How can I get Mailman to reprocess messages in a queue directory? Or alternately, how can I transfer all the messages from a queue directory into the moderation hold queue for the relevant list(s)?

My problem is that my in queue directory is full of messages that previously passed moderation, but were never delivered because my qrunner wasn't working. I know that I could just start up the qrunner and those messages would get delivered, but I want list administrators to have a second look because some of the messages are fairly old, and it wouldn't make sense to send them now.

I read about a Mailman command called unshunt but I don't think it does quite what I need here.


I found a way to get Mailman to reprocess messages as if they were fresh. First I used show_qfiles to extract the raw message content from a .pck file, then I pass that content to the Mailman wrapper.

show_qfiles -q /PATH/TO/YOURFILE.PCK | sudo -u postfix mailman post LISTNAME

The sudo is required because the Mailman wrapper must be run with a low privileged user like Postfix.

The verb post instructs the wrapper to process the message like any other incoming message.

This doesn't guarantee a message will be held for moderation, it just means the same criteria will be applied as if a new message was sent to the list.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.