problem with Mailman on Mac OS X Snow Leopard client

Mail generated by Mailman hangs in my dedicated, on-board MTA's queue unless I remove a certain bit of custom Postfix configuration that I entered following instructions kindly posted here by one Larry Stone. The instruction in question are those for building Mailman on above platform directly from code downloaded from a source referenced on list.org and the configuration in question is one involving alias maps.
Everything about this build of Mailman seems to be working fine. I can create lists and add or remove members. New members receive the expected mail--but here's the catch: only if I remove the above mentioned bit of custom Postscript configuration.
I came to suspect this bit of custom Postscript configuration exactly because Postfix reported an error involving it. Therefore I removed the bit of custom Postscript configuration to see if the queue would clear and it did.
Everyone got their mail.
However and of course, I question whether I can just remove this bit of custom Postscript configuration without consequences. Mailman-users may seem unlikely as a place to inquire about this; but, again, the instruction to use this bit of custom Postfix configuration came from a poster to this list whose particular posting is cited on list.org as authoritative.
I am running Mailman on an Intel Mac mini with the client version of Mac OS X Snow Leopard installed. I will gladly post more details about my platform although I am not sure what might be needed.
The bit of custom Postfix configuration that I've experimented with removing is exactly as follows: "hash:/etc/postfix/aliases"
The context in which this bit is supposed to appear is as follows: "alias_maps = hash:/etc/postfix/aliases, hash:/usr/local/mailman/data/aliases".
I just remove the bit, leaving: "alias_maps = hash:/usr/local/mailman/data/aliases". Again, with just this as remnant of my custom Postscript configuration, Mailman-generated mail gets sent.
The error message that Postfix repeatedly issues when I don't have the suspect portion of this bit of custom Postscript configuration removed is as follows: "Oct 10 21:10:05 email postfix/local[75578]: fatal: open database /etc/postfix/aliases.db: No such file or directory Oct 10 21:10:06 email postfix/master[141]: warning: process /usr/libexec/postfix/local pid 75578 exit status 1 Oct 10 21:10:06 email postfix/master[141]: warning: /usr/libexec/postfix/local: bad command startup -- throttling Oct 10 21:11:06 email postfix/local[75583]: fatal: open database /etc/postfix/aliases.db: No such file or directory Oct 10 21:11:07 email postfix/master[141]: warning: process /usr/libexec/postfix/local pid 75583 exit status 1 Oct 10 21:11:07 email postfix/master[141]: warning: /usr/libexec/postfix/local: bad command startup -- throttling Oct 10 21:12:07 email postfix/local[75584]: fatal: open database /etc/postfix/aliases.db: No such file or directory Oct 10 21:12:08 email postfix/master[141]: warning: process /usr/libexec/postfix/local pid 75584 exit status 1 Oct 10 21:12:08 email postfix/master[141]: warning: /usr/libexec/postfix/local: bad command startup -- throttling Oct 10 21:13:08 email postfix/local[75593]: fatal: open database /etc/postfix/aliases.db: No such file or directory Oct 10 21:13:09 email postfix/master[141]: warning: process /usr/libexec/postfix/local pid 75593 exit status 1 Oct 10 21:13:09 email postfix/master[141]: warning: /usr/libexec/postfix/local: bad command startup -- throttling"
One can see why I investigated Postscript alias maps upon seeing these log entries. I obviously don't understand them, though.
Finally, inasmuch as it may be relevant, I next post feedback that I get from a certain "postconf" command, specifically "postconf alias_maps": "alias_maps = hash:/etc/aliases"
Seeing this as the feedback to said command, makes we wonder: Wouldn't the correct feedback here include reference to Mailman's own "aliases" file given what remains of my custom Postscript configuration?
Anyway, something is certainly wrong. Assistance, if offered, will be much appreciated. Indeed thanks for even reading this since its the first thing I hope for that people read about my problem.
Hopefully, I have posted well for starters but i am more than happy to take hints about what else I need to submit. I am a first time poster.
Graham

On Mon, 10 Oct 2011, Graham Young wrote:
I guess I'm best to answer this.
alias_maps is this list of aliases, local addresses which do not get delivered locally but rather get sent elsewhere. That could be another address (for instance, on my system, postmaster is an alias for me so I get all postmaster mail) or for Mailman, a pipe to the Mailman mail input script.
It means exactly what it says. /etc/postfix/aliases.db does not exist.
That should be the outpust of "postconf -d alias_maps". -d means the default value. On my system (and I have never touched this part), /etc/aliases is a softlink to /etc/postfix/aliases (in other words, just a pointer to that file).
So the real is why does /etc/postfix/aliases.db not exist. It's not really required and it isn't part of Mailman. I had assumed it was past of the standard Postfix installation on OS X client but perhaps not (or maybe it was and no longer is but I didn't realize that because I've been upgrading or moving all the way from 10.3.
(a digression as to how aliases.db is created. aliases is a text file in a prescribed format. To turn it into the hash table Postfix wants to use, it's run through postmap. postmap hash:aliases created aliases.db)
The purpose of that customization is to append Mailman's alias file to the existing alias file.
If you don't have /etc/postfix/aliases.db, then don't include it in alias_maps. It's that simple. If you have a different aliases file, use that in place of /etc/postfix/aliases in alias_maps.
The best way to do this is to look in your Postfix main.cf for an earlier definition of alias_maps. So if you find alias_maps = hash:foo, then replace my instructions with alias_maps = hash:foo, hash:/usr/local/mailman/data/aliases
If there is no prior definition of alias_maps in main.cf, then do postconf -d alias_maps and then: alias_maps = (whatever postconf -d alias_maps returned), hash:/usr/local/mailman/data/aliases
However, please note that my instructions assume and expect familiarity with Postfix. If you don't understand Postfix, you will almost certainly have other problems in the future.
-- Larry Stone lstone19@stonejongleux.com

On Mon, 10 Oct 2011, Graham Young wrote:
I guess I'm best to answer this.
alias_maps is this list of aliases, local addresses which do not get delivered locally but rather get sent elsewhere. That could be another address (for instance, on my system, postmaster is an alias for me so I get all postmaster mail) or for Mailman, a pipe to the Mailman mail input script.
It means exactly what it says. /etc/postfix/aliases.db does not exist.
That should be the outpust of "postconf -d alias_maps". -d means the default value. On my system (and I have never touched this part), /etc/aliases is a softlink to /etc/postfix/aliases (in other words, just a pointer to that file).
So the real is why does /etc/postfix/aliases.db not exist. It's not really required and it isn't part of Mailman. I had assumed it was past of the standard Postfix installation on OS X client but perhaps not (or maybe it was and no longer is but I didn't realize that because I've been upgrading or moving all the way from 10.3.
(a digression as to how aliases.db is created. aliases is a text file in a prescribed format. To turn it into the hash table Postfix wants to use, it's run through postmap. postmap hash:aliases created aliases.db)
The purpose of that customization is to append Mailman's alias file to the existing alias file.
If you don't have /etc/postfix/aliases.db, then don't include it in alias_maps. It's that simple. If you have a different aliases file, use that in place of /etc/postfix/aliases in alias_maps.
The best way to do this is to look in your Postfix main.cf for an earlier definition of alias_maps. So if you find alias_maps = hash:foo, then replace my instructions with alias_maps = hash:foo, hash:/usr/local/mailman/data/aliases
If there is no prior definition of alias_maps in main.cf, then do postconf -d alias_maps and then: alias_maps = (whatever postconf -d alias_maps returned), hash:/usr/local/mailman/data/aliases
However, please note that my instructions assume and expect familiarity with Postfix. If you don't understand Postfix, you will almost certainly have other problems in the future.
-- Larry Stone lstone19@stonejongleux.com
participants (2)
-
Graham Young
-
Larry Stone