Majordomo by Kit Haskins
It had been a week since the computer that hosted Majordomo died. It was on a Linux platform with sendmail. All that remained were four SCO Openserver types with MMDF. Moving Majordomo over to a SCO MMDF environment turned out to be a project onto itself.
First off, what is Majordomo? Majordomo is a collection of perl scripts that manage mailing lists. A good website to get started http://www.greatcircle.com/majordomo has the source code that can be downloaded along with archives of their FAQ.
When setting up a mailing list manager like Majordomo, keep in mind that Majordomo itself does not send the mail, your MTA (mail transport agent) does, for example MMDF or Sendmail. Once I got this key point in my thick skull, the troubleshooting became easier.
The first steps were to install the perl scripting language and the Majordomo package into the directories that were set aside for them.
The majordomo.cf file needs to have the $uid changed from 123 to 213 or anything higher than 200. Then using scoadmin, create a user with the same uid in the majordomo.cf file. It wasn't happy with me setting a user id lower than 200. I choose the name "major" and his/her home directory is "/usr/majordomo".
With MMDF two files will have to be edited, /usr/mmdf/mmdftailor and /usr/mmdf/table/alias. The editing will allow for redirecting mail to a program, Majordomo's wrapper, and also allowing redirection of mail to a list in a file.
/usr/mmdf/mmdftailor: ALIAS table=alias, nobypass, trusted
The key point is the "trusted". Without the addition of "trusted", MMDF will not deliver to a file or a pipe. We'll get back to that idea very quickly.
/usr/mmdf/table/alias: majordomo: "major|/usr/majordomo/wrapper majordomo" marc: </usr/majordomo/lists/marc cs215: </usr/majordomo/lists/marc
The first entry is that 'pipe' to a file or program. The line is telling MMDF that any mail addressed to "majordomo" will be sent to a program in the directory "/usr/majordomo" and will run the program "wrapper" by the user "major". The "major" user must also appear in the /etc/passwd file. We created the user with scoadmin a few steps back.
The second and third entries are the mailing list's aliases. I have two groups shown here:
cs215 (my programming class) marc (mountain amatuer radio club)
Take notice of the less "<" than sign in front of the filename. It's there to signal MMDF that the alias is from a file and not a username. This was another key point that took a while to find.
The alias "marc", for example, has a list of addresses in a file named "marc" that is located in the directory "/usr/majordomo/lists". That file is regular run of the mill ASCII and can be edited with your favorite editor like pico, vi, edt. The format of the file is to have one and only one email address per line. Do not put commas at the end of each line, it will be misinterepted as a part of the address. Simply plunk down a carriage return and continue with the next address.
MMDF will return "user unknown" if the file is not globally accessible. "chmod 664 /usr/major/lists/marc" fixed that up.
The rest of the documentation from Majordomo will get you up and running in a few minutes. My biggest issues were getting Majordomo to work with MMDF and here they are.
Thru the ethernet, past the gateway, off the modem pool, nothing but NET.
Got something to add? Send me email.
(OLDER) <- More Stuff -> (NEWER) (NEWEST)
Printer Friendly Version
Increase ad revenue 50-250% with Ezoic
More Articles by Kit Haskins © 2012-07-14 Kit Haskins