| 1 2 3 4 5 6 7 8 9 | ||
|
Editor: karlberry
Time: 2012/01/16 00:19:41 GMT+0 |
||
| Note: clarify comments | ||
changed: - # on internal # run on internal: changed: - # check if there's no error # check if there's no error, then do: changed: -This must be run on the internal subhost. (The old location was administrationmaintenance/ml.pl on colonialone / mgt.) This must be run on the internal subhost. (The old location was administration/maintenance/ml.pl on colonialone / mgt.)
Some Mailman admin tasks need to be performed on the actual machine where Mailman is installed, while others, such as changing the password for a list, can be done via the web interface and the site-wide admin mailman password. See MailSystem for architecture details.
In order to do this you need to have shell access to the machine that runs the master Mailman installation.
Once your ssh public key has been added, you can to log in as the user 'list'. You will be greeted with the bash prompt:
[mailman@lists list]$
From here you can perform all sorts of Mailman administrative tasks, that are discussed below.
See also: ResetListPassword
Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py?req=index
Project admins can create their own mailing lists if they are named PROJECTNAME-*, or PROJECTNAME, or {bug,info,help}-PROJECTNAME. This is done through the normal savannah web admin interface, subpage Mailing Lists. (What that web interface does is ssh to the list server and run newlist; see the MailSystem page.)
For lists whose names do not follow an allowed pattern, savannah-hackers must manually run ~/mycreate_list.pl, and then attach the list to the given project using our convenience script ml.pl:
# run on internal: /root/bin/ml.pl -a adminusername -g project -l listname # check if there's no error, then do: /root/bin/ml.pl -a adminusername -g project -l listname | mysql savane
This must be run on the internal subhost. (The old location was administration/maintenance/ml.pl on colonialone / mgt.)
Simple aliases, as opposed to lists, can be created in fp.gnu.org:/com/mailer/aliases.
You need to edit the list configuration, and the FSF-specific virtual domain support (the domains/ subdirectory from the list directory).
Here are the commands:
withlist -l -r fix_url $list_name -u lists.$newdomain.org go $list_name cd domains mv nongnu.org gnu.org # or 'mv gnu.org nongnu.org' if going the other way # or 'touch gnu.org nongnu.org' to accept mail at both domains
There is an hourly cron job that collects the "domains" information, so changes are not instantaneous.
We do not remove list archives when it was a public archive. Instead, we deactivate a list, while keeping archives and status:
cd /var/mailman/lists/listname/domains mv gnu.org gnu.org.disabled-yourname # mv nongnu.org nongnu.org.blah ...
Then, in the Privacy form in the mailman interface, set the "advertised" variable to "no". TODO: use 'config_list' as with '~/mm-configs/norespond.txt'
Then, remove any heldmsg-listname* pending messages from ~mailman/data.
If we really want to delete the list, then to tell Mailman to delete a list and its settings:
rmlist listname
... with archives:
listname=LISTNAME rmlist -a $listname # purge pending requests ls -U /var/mailman/data | grep '^heldmsg-$listname-[0-9]+.pck$' | xargs rm # Note: with a live list, purging should be followed by this, so Mailman take the removals into account: # curl http://lists.gnu.org/mailman/admindb/testlist -F adminpw=****** # (ToDo: backup the archives somewhere for a little while) # with mharc, for public archives mv ~/mbox/$listname ~/deleted/mbox mv ~/html/$listname ~/deleted/html 'listname' doesn't contain the @domain.tld part. Some mailing lists contain both private and public archives.
Sometimes people ask to remove a message from the archives, because they don't want their address harvested, or for some legality, or whatever.
As a policy, we do not have to implement all such requests; deletion for spam purposes is typically useless since it's already been mirrored in many places.
If you do delete a message, it is usually better to edit it to make the body/headers/whatever empty, instead of actually deleting it. Deletion will change all the existing url's. Here's the procedure:
- become user mharc on lists.gnu.org (ssh in or su if you can)
- cd mbox/listname
- edit file ('mutt -f 200X-YZ' might help)
- cd ../bin
- ./web-archive -rebuild listname
It's CRUCIAL to run web-archive as the mharc user.
- Gather information:
- The name of the new list (and/or the project it belongs to)
- The email address of the list owner
- If you have not been given a specific address, and this request has come from a project administrator on Savannah, use the email address attached to their account.
- The name of the list should match one of:
- PROJECT_NAME@gnu.org
- PROJECT_NAME-*@gnu.org
- bug-PROJECT_NAME@gnu.org
- help-PROJECT_NAME@gnu.org
- info-PROJECT_NAME@gnu.org
- PROJECT_NAME@nongnu.org
- PROJECT_NAME-*@nongnu.org
- To actually create the list
Run the following commands from the shell:
./mycreate_list.pl bug-somelist@gnu.org adminsemail@address.tldThen you may want to update the Savannah database (table mail_group_list):
Beuc/ml.pl -a adminsname -g project -l listnameIt should produce an error if a given name doesn't exist, or a valid SQL command. Once you get a valid SQL command, you can pipe it to MySQL?:
Beuc/ml.pl -a adminsname -g project -l listname | mysql savannah