Mailman Infrastructure SOP
Contact Information
Owner: Fedora Infrastructure Team
Contact: #fedora-admin, sysadmin-main, sysadmin-tools, sysadmin-hosted
group
Location: serverbeach
Servers: hosted-lists01, collab03
Purpose: Provides mailing list services.
Description
Mailing list services for Fedora Hosted projects are located on the
hosted-lists01.fedoraproject.org server.
Fedora Project mailing lists are on collab03.
Common Tasks
Creating a new mailing list
* Log into hosted-lists01 or collab03
* sudo /usr/local/bin/fedora-mailing-list-setup
[you@hosted-lists01 ~] $ sudo /usr/local/bin/fedora-mailing-list-setup
Password:
Project name: project
List name: project-devel
Admin username: username # This is the admin user for the list.
FAS Username: yourfasusername # This is the admin adding the lists username
FAS Password: # This is the fas password for the admin user adding the list.
[you@hosted-lists01 ~] $
Note that list names should make sense, and not contain the words 'fedora'
or 'list' - the fact that it has to do with Fedora and that it's a list
are both obvious from the domain of the email address.
Important: Please make sure to add a valid description to the newly
created list. (to avoid [no description available] on listinfo index)
Removing content from archives
We don't.
It's not easy to remove content from the archives and it's generally
useless as well because the archives are often mirrored by third parties
as well as being in the INBOXs of all of the people on the mailing list at
that time. Here's an example message to send to someone who requests
removal of archived content:
Greetings,
We're sorry to say that we don't remove content from the mailing list archives.
Doing so is a non-trivial amount of work and usually doesn't achieve anything
because the content has already been disseminated to a wide audience that we do
not control. The emails have gone out to all of the subscribers of the mailing
list at that time and also (for a great many of our lists) been copied by third
parties (for instance: http://markmail.org and http://gmane.org).
Sorry we cannot help further,
Mailing lists and their owners
Are you in need of checking who owns a certain mailing list without having
to search around on list's frontpages?
If yes, mailman have a nice tool that will help us gaining our result in a
few seconds:
Get a full list of all the mailing lists hosted on the server: (either
fedoraproject.org or fedorahosted.org)
sudo /usr/lib/mailman/bin/list_admins -a
See which lists are owned by example@example.com:
sudo /usr/lib/mailman/bin/list_admins -a | grep example@example.com
Troubleshooting and Resolution
List Administration
The mailman site password for hosted-lists01 or collab03 can be found it
/root/mm_sitepass
sudo cat /root/mm_sitepass
The site password can be used to reset lists admin passwords if required.
Note: If you change the site password, please update this file.
ML password reset
When a user has requested their mailman password be reset perform the
reset using:
sudo /usr/lib/mailman/bin/change_pw -l
The new mailman admin password will be e-mailed to all administrators set
to the list.
Restart Procedure
If the server needs to be restarted mailman should come back on it's own.
Otherwise each service on it can be restarted:
sudo service mailman restart
sudo service postfix restart
How to delete a mailing list
Delete a list, but keep the archives
sudo /usr/lib/mailman/bin/rmlist
Delete a list and its archives
sudo /usr/lib/mailman/bin/rmlist -a
Errors from mailman cron jobs showing things like:
Subject: Cron /usr/lib/mailman/cron/senddigests
return unicode(s, self.input_codec).encode(self.output_codec)
UnicodeError: ISO-2022-JP encoding error: invalid character \xfa
- login to the machine hosting the list (collab03 or hosted-lists01).
- as root, modify /etc/passwd to make the shell for the mailman user be
/bin/bash
- as root su to the mailman user:
- cd /var/lib/mailman/lists/
for list in *; do echo $list; /usr/lib/mailman/cron/senddigests -l $list; done
- see which list is the culprit
- go to /var/lib/mailman/lists/$thatlist/ and remove the digest.mbox file
Other tracebacks:
When in doubt run the mailman commands with the -l option to figure out
which one is the problem
Mailman migration
This page is a draft only
It is still under construction and content may change. Do not rely on the
information on this page.
This is a place where instructions for migrating lists from redhat.com to
lists.fp.o will be kept.
Things required from Red Hat:
* The list config (whatever the equivalent of
/var/lib/mailman/lists/ is)
* The list archives, in mbox form
(/var/lib/mailman/archives/private/.mbox)
Put these items into their respective places on collab03.
If required at this point, change the list name as follows:
* Rename the archive and list directories to the new names
* Create a file called .config and put the following in
it:
real_name = ''
* Don't do anything with that file until the next step :)
For all lists, do the following:
* In the .config file created earlier, add the following
line (create the file if you didn't need to rename the list):
acceptable_aliases = [ 'old-list-name@redhat.com' ]
.
* Verify the sanity of your new configuration via
'/usr/lib/mailman/bin/config_list -i .config -c
* If that checks out, eliminate the -c from the previous command in
order to make your changes.
* generate aliases for the new list /usr/lib/mailman/bin/genaliases
* change the url for the list /usr/lib/mailman/bin/withlist -l -r
fix_url -u admin.fedoraproject.org
* Rebuild the archives using '/usr/lib/mailman/bin/arch --wipe
'
* restore selinux contexts restorecon -rv /var/lib/mailman/lists
/var/lib/mailman/archives/private
Additional steps
* rebuilding the archives means all links to the historical mailing
lists posts will be broken. Can we get Red Hat to add http redirects
from www.redhat.com/archives/ to the
lists.fedoraproject.org/archives/ ?
* we'll need Red Hat to set up forwarding aliases for to
* fix the names of list that do not make any sense (e.g.
feodra-extras-steering) in the current environment. relevant