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.
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.
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.