I'm in the middle of planning an upgrade of our mailman installation and was looking for some pointers. The current version is 2.0.11 and I'm planning on going to the current 2.1.5. I'm actually moving the installation from an older desktop system to a newer server at which time I want to upgrade to the newer version. The target machine is a RedHat Enterprise 3.0 AS server with everything up2date(d). Stock RH sendmail. All this machine is doing is listmail.
First question on the move of machines, should I a) rsync everything over to the new server and just go or b) install from scratch on the new server. Any advice here would be great. What about the old lists? Simply copy the lists/* directory over? I tried the fresh install on the new server then copied over lists/* to the new machine (and /etc/aliases) and all seems to be ok so far.
Next, on the upgrade. Same basic questions, should I a) upgrade the previous version on disk or b) start from scratch and somehow import the lists over?
Anyone who's done this type of upgrade, advice and pointers would be much appreciated.
Thanks,
Darren Young Senior UNIX Administrator University of Chicago Graduate School of Business darren.young@gsb.uchicago.edu Voice: 773-702-0331
I'm in the middle of planning an upgrade of our mailman installation and was looking for some pointers. The current version is 2.0.11 and I'm planning on going to the current 2.1.5. I'm actually moving the installation from an older desktop system to a newer server
I just did a 2.0.3 to 2.1.5 same-server upgrade last night. It seemed to go fairly smoothly - I did a clean install and then copied lists/* and archives/* to the new directories. I'm always leery of upgrades-in-place... some sort of cruft always seems to get left behind.
I made sure to shut down the old mailman and sendmail, kill all processes, and flush the old queue.
The main gotcha that took me a while to figure out (it was *early* in the morning by the time I did this!) was the extra lines that needed to be added for each list to virtusertable (the server is running Sendmail) - the 2.0.x versions seemed to have fewer addresses per list. Without some of the new entries - like listname-bounces - no outbound mail was being processed. Got stuck for a while on thinking smrsh and the mailman wrapper was the problem...
The server had about 55 lists on it; rather than type out all the virtusertable entries by hand, I wrote an ugly little Perl script to read through a file containing the list names and spit out another file containing all the virtusertable entries. Here it is - maybe it will save you some time!
#!/usr/bin/perl
# Script to generate virtusertable entries # for Mailman 2.1.5 # # (c) 2004 by Bruce Timberlake <bruce at brtnet dot org> # # create all-lists.txt with # # bin/list_lists -b > all-lists.txt
$listfile = "all-lists.txt"; $virtfile = "virt-file.txt"; $hostname = "\@www.example.com";
open INPUT, "<$listfile" or die "Can't open $listfile: $!\n"; open OUTPUT, ">$virtfile" or die "Can't open $virtfile: $!\n";
while (<INPUT>) { chomp; print OUTPUT "## List: $_\n"; print OUTPUT "$_$hostname\t$_\n"; print OUTPUT "$_-admin$hostname\t$_-admin\n"; print OUTPUT "$_-bounces$hostname\t$_-bounces\n"; print OUTPUT "$_-confirm$hostname\t$_-confirm\n"; print OUTPUT "$_-join$hostname\t$_-join\n"; print OUTPUT "$_-leave$hostname\t$_-leave\n"; print OUTPUT "$_-owner$hostname\t$_-owner\n"; print OUTPUT "$_-request$hostname\t$_-request\n"; print OUTPUT "$_-subscribe$hostname\t$_-subscribe\n"; print OUTPUT "$_-unsubscribe$hostname\t$_-unsubscribe\n"; print OUTPUT "\n"; } close OUTPUT; close INPUT;
I told you it was ugly! :) But it was about 3 am when I did it, so... I generated the all-lists.txt file by using "bin/list_lists -b" in the new Mailman install after I copied the lists etc. across. Then I opened virtusertable in vi, manually deleted the old entries for the 2.0.3 install and imported virt-file.txt. A quick makemap, restarting sendmail and Mailman, and all was well.
Since you're switching machines, you'll need to deal with a DNS changeover, and maybe editing mm_cfg.py to change the hostname etc. Or are you going to use the old domain name on the new server, so that the list address domain stays the same? I didn't have to deal with that, so I can't comment.
At 3:41 PM -0500 2004/05/28, Young, Darren wrote:
I'm in the middle of planning an upgrade of our mailman installation and was looking for some pointers.
You can take a look at
<http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq03.004.htp>.
First question on the move of machines, should I a) rsync everything over to the new server and just go or b) install from scratch on the new server. Any advice here would be great. What about the old lists? Simply copy the lists/* directory over? I tried the fresh install on the new server then copied over lists/* to the new machine (and /etc/aliases) and all seems to be ok so far.
See above.
Alternative, you could do the install on the new machine "clean",
then re-create all the configuration items for all the lists. When you're done, you can import the subscriber list and the archives from the old lists.
Next, on the upgrade. Same basic questions, should I a) upgrade the previous version on disk or b) start from scratch and somehow import the lists over?
I don't like trying to do upgrades over a previous version, but
maybe that's just me.
-- Brad Knowles, <brad.knowles@skynet.be>
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin, Historical Review of Pennsylvania.
SAGE member since 1995. See <http://www.sage.org/> for more info.
participants (3)
-
Brad Knowles -
Bruce Timberlake -
Young, Darren