Mercury and Pegasus Mail Netware FAQ's

Last update: 03-Feb-1999.

I wish to thank David Kocmoud for compiling this information, that have guided a lot of people through the process of changing their Novell Netware environment.



Back to my linkpage.

From:        	"David J. Kocmoud"
Date:        	Tue, 5 Jan 1999 15:12:39 -0600
Subject:     	FAQ: Upgrading from Netware 3.x to Netware 4.x/5.x
Reply to:    	david-kocmoud@tamu.edu

Upgrading from Netware 3.x to Netware 4.x/5.x (issues related to 
Pegasus Mail and Mercury)

Background info:

In the old bindery days of Netware 2.x/3.x, upgrading or replacing a 
server with another bindery-based server was an easy process.  You 
simply ran BINDFIX at least twice to create backup copies of your 
Netware bindery database, copied those backup files 
(SYS:SYSTEM\*.OLD) to the new server, and then restored that bindery 
database to your new bindery server using BINDREST.  Since the 7- or 
8-digit hexadecimal user ID number for each user object would still 
be the same ones as on the old server, Pegasus Mail and Mercury would 
continue operating like nothing happened.  Remember that in a Netware 
bindery-based network, Pegasus Mail and Mercury use the 
SYS:MAIL\userid directory structures for mail storage.  Each of these 
directories has a directory name that precisely matches the user's 
user ID as defined within the bindery database.  Thus, when the user 
ID doesn't change, the directories don't need to be changed either.

However, Netware 4.x and 5.x use an NDS database and they only 
emulate a bindery database.  Thus, you cannot run BINDREST on a 
NW4.x/5.x server.  Additionally, when performing any kind of upgrade, 
import, or restore of user objects or the whole NDS database on a 
Netware 4.x/5.x, every user's user ID gets changed in the process.  
Repairing an NDS database can sometimes also cause the user IDs to 
change.  What this means to Pegasus Mail and Mercury is that the user 
IDs will no longer match up with each user's SYS:MAIL\userid mailbox 
directory.  In order to get mail working properly again, you have to 
then rename each SYS:MAIL\userid directory to that they use each 
user's new user ID.  This is the main reason why we usually recommend 
that you use NDS mode on Netware 4.x/5.x servers instead of Bindery 
mode.  

Getting the SYS:MAIL\userid directories migrated:

When using Novell's migration tools, the SYS:MAIL\userid directories 
are automatically renamed to match the new user ID values for each 
user object and your job is done.  However, if you don't use Novell's 
migration tools (i.e. you'd rather create the user objects from 
scratch) or the migration fails to rename the SYS:MAIL\userid 
directories properly, then you'll need to figure out which mail 
directory belongs to which user and then rename the directory 
accordingly after copying the SYS:MAIL\userid directories over to the 
new server.

To help with the process of determining old and new userids, we 
recommend that you use the dos-based LISTOBJ.EXE utility from the 
popular JRB Utilities (JRB500A.ZIP)--you can download the utilities 
from:  http://www.jrbsoftware.com/

The LISTOBJ.EXE utility will give you a snapshot of all of your 
users' usernames along with their user IDs and you can send the 
output to a text file.  By doing this before and after the migration, 
you can then match up the old and new user IDs by username and then 
beging the process of renaming the SYS:MAIL\userid mail directories 
accordingly.

You can further automate this process by constructing a batch file 
that will automatically rename each of the old user ID directory 
names to their new user ID directory names.  To do this, you can load 
both of these text output files into MS Excel (or similar 
application) with the username in one column and the user ID in 
another, remove all the rows above and below the user listings, and 
then sort the two lists by the username column.  In the cases where a 
username only exists in one of the two files or is not used for mail 
purposes (e.g. SUPERVISOR, GUEST, etc.), you can delete the row.  At 
this point, you copy and paste in order to merge the two documents 
into one so that you have a username column, an old user ID column, 
and a new user ID column.  At this point, your Excel file should look 
something like this (view in Courier font!):

A       B         C
USER1   1B00002   FE000001
USER2   E3000002  3E300023
...

Now, replace all of the usernames in the first column with "RENDIR".  
Your Excel file should now look something like this (view in Courier 
font!):

A       B        C
RENDIR  1B00002  FE000001
RENDIR  E3000002 3E300023
...

Save this file as an ASCII Text file with TAB delimiters; give the 
file a .BAT batch filename extension (e.g. C:\convert.bat).

To perform the directory rename process, first change to the SYS:MAIL 
directory on your new server.  e.g.  Z:\MAIL
Then run your batch file.  e.g.  C:\CONVERT.BAT

Since it's possible that an unrelated old user ID and new user ID may 
have the same name, the RENDIR command may fail to rename some 
directories.  In light of this, you may want to modify the batch file 
further by inserting PAUSE statements every 5 lines or so and making 
notes of any directories that could not be changed because the target 
directory already exists.  You can then go back after the batch file 
finishes and remove all but the failed entries from the batch file 
using a text editor (such as the ms-dos EDIT.COM utility) and re-run 
the batch file.  Repeat this process until all the directories have 
been renamed without error.

At this point, if you will continue running Pegasus Mail and Mercury 
in bindery mode on the new server, you should assign each user full 
rights to their own SYS:MAIL\userid directory.  If instead you will 
be converting Pegasus Mail and Mercury to NDS mode, you should now 
read the FAQ concerning Converting from Netware Bindery mode to 
Netware NDS mode.


top

From:        	"David J. Kocmoud"
Date:        	Tue, 5 Jan 1999 12:58:32 -0600
Subject:     	FAQ: Converting from Netware Bindery mode to Netware NDS mode

Note:  If you are migrating from a Netware 3.x server to a Netware 
4.x/5.x server, first read and follow the Pegasus Mail FAQ entitled 
Upgrading from Netware 3.x to Netware 4.x/5.x.  Once it all is 
working well after the server upgrade, return here to migrate Pegasus 
Mail and Mercury from bindery mode to NDS mode.   

Download the WPMNDS20.ZIP file from one of the official Pegasus Mail 
download sites and completely read the README.NDS text file within 
it. The official Pegasus mail site is http://www.pmail.com  

You need make sure all of your user objects have a default file 
server and a unique NDS home directory defined within NWAdmin.

Warning: Pegasus Mail and Mercury do not support long directory names 
within the NDS home directory definition.  Thus, if you have any user 
objects with long usernames (e.g. DavidKocmoud), make sure you rename 
their NDS home directories to only 8 characters max (e.g. 
sys:users\DavidKoc) and modify the NDS home directory property 
accordingly for the user object within NWAdmin.  If you do not do 
this, the home directories will not be created properly and any 
incoming mail for these users will simply be "deferred" since it  
cannot be delivered.

Then you can run the MAKEMBOX.EXE utility (which comes with 
WPMNDS20.ZIP).  This will create the PMAIL mailbox subdirectories 
under each user's NDS home directory and assign the necessary rights 
(usually to the [root] object or optionally to a group object).

Then you can run the PMIGRATE.EXE utility (which also comes with 
WPMNDS20.ZIP) to migrate the SYS:MAIL\userid bindery-based mailboxes 
to the NDS-based mailboxes automatically.

You'll also need to modify your SYS:SYSTEM\MERCURY.INI file for the 
NDS mode changes.  It may help to make a backup copy of your current 
MERCURY.INI file and then modify MERCURY.INI accordingly for NDS 
mode. The installation program will install sample MERCURY.INI files 
for both bindery and NDS modes.  View the sample NDS version 
(MERCNDS.INI) to determine what needs to be added or changed in the 
MERCURY.INI file.

You'll also need to modify your SYS:SYSTEM\AUTOEXEC.NCF file and/or 
any other NCF file (e.g. MERCURY.NCF) that loads or unloads the 
Mercury modules.  All of the Mercury modules except for the SMTP 
Client (MERCURYC) have specific NDS and bindery versions.

MERCURY  <--->  MERCNDS
MERCURYS  <--->  MERCNDSS
MERCURYP  <--->  MERCNDSP

I don't recommend using PMUSER.NLM to auto-create your user mailboxes 
since it currently may cause Netware 4.11 servers to abend when it is 
unloaded.  If you do use PMUSER.NLM, it must be loaded on the server 
containing the master replica of your NDS tree.

Instead of PMUSER, you can either use Mercury's built-in 
automaintenance feature to automatically create a user's mailbox the 
first time an SMTP e-mail is sent to the user (I myself religiously 
send an introductory message to any new users that I add so that 
their mailbox will be created automatically by Mercury) or you can  
use the MAKEMBOX.EXE utility.

One last note:  You should not mix bindery and NDS modes within a 
single network since they cannot communicate with each other.  Thus, 
when you make the switch to NDS mode, you'll need to do it for all of 
your users and to all of your servers (unless you run Mercury on all 
of your servers and each server has its own host name, in which case 
you can do the switch on a per-server basis).  The good news is that 
the PMIGRATE utility makes the conversion process quite effortless no 
matter how many users you have on your servers.

Back to top   Back to my linkpage.