You’ve got a few Windows NT 4.0 Server computers running as print servers, and now it’s time to move those old reliable NT print servers to Windows 2000. Are you ready for all the work it’s going to take: upgrading the operating system, reinstalling printer drivers, reconfiguring permissions, and so on? Microsoft has created Print Migrator 3.0 to help make this task easier. In this Daily Drill Down, I’ll introduce you to Print Migrator to show you how to ease the process of moving a print server from Windows NT to Windows 2000.

What’s Print Migrator?
Microsoft’s Print Migrator has actually been around for some time now. In its current version, 3.0, it’s such a powerful tool that it deserves consideration once you decide to migrate printer servers to Windows 2000 Server or Windows .NET Server. You can download Print Migrator 3.0 from the Microsoft File and Print Services page.

Some new features in Print Migrator 3.0 allow it to:

  • Migrate from one version of Windows Server to another, making it the perfect means to accomplish your goal of migrating your Windows NT 4.0 Servers to Windows 2000 or Windows .NET Server.
  • Move printer configurations to or from clustered print servers, providing you with a tremendous tool for large enterprise print server configurations.
  • Automatically provide conversion from all LPR ports to the standard TCP/IP port monitor.

You can run Print Migrator 3.0 from any of the following source systems and get a complete backup of the printer configuration:

  • Windows NT 4.0 SP6a
  • Windows 2000 SP2
  • Windows XP
  • Windows .NET Server

You can restore the print configuration to the same systems as well; however, you should be aware that restoring backups made on Windows 2000, Windows XP, or Windows .NET print servers to a Windows NT 4.0 SP6a print server can lead to problems due to different printer driver versions.

Consider your options
Once it’s time to migrate printers from Windows NT 4.0, Print Migrator gives you three options. You can perform a manual migration, an automatic migration, or a combination of the two.

The manual migration process is fairly straightforward and works very well in small organizations. After you’ve completely documented all of the existing print settings on the existing print server, you’ll need to recreate each printer manually on the new Windows 2000 or Windows .NET Server print server. The printers are added and configured using the Add Printer Wizard.

The manual migration method provides you with exceptionally granular control, and affords you the opportunity to ensure that your new print servers are configured in accordance with the current organizational policies and are using the latest drivers. However, as you might have guessed, these capabilities come at a high price: your time.

Using the manual migration method can turn into a very time-consuming and potentially error-prone exercise as the number of printers to be configured increases. I recommend you avoid the manual migration method unless you are only dealing with a small number of printers.

The automatic migration process makes use of the Print Migrator and provides you with a means to quickly, easily, and accurately backup and restore printers automatically. As I pointed out previously, Print Migrator 3.0 allows you to migrate printers from one version of Windows to a different version of Windows. The process to perform automatic migration using Print Migrator 3.0 is discussed later in this article, along with the issues you must be aware of when using Print Migrator.

This combination migration utilizes portions of both the manual migration method and the automatic migration method to best suit the needs of your organization. If you’ve got a mixture of both old and new network clients, this method will probably be the one that you end up using.

Using Print Migrator
Once you’ve downloaded the Print Migrator 3.0 utility, you can begin using Print Migrator to migrate your printer configuration. Double-click the self-extracting ZIP archive that you downloaded from the Microsoft File and Print Services page and copy the Print Migrator files to your computer. The default location for the tools is C:\PrintMig3, but you can change it if you want. After you’ve extracted the tools, navigate to the directory you previously selected using Explorer and double-click the Printmig.exe file to launch the utility. Figure A shows the Print Migrator on one of my servers, with some of the nodes expanded to show the configuration of the server.

Figure A
Print Migrator displays the source system.

When using Print Migrator for the backup process, there is only one option to configure: whether you want to log the actions of the Print Migrator or not. To configure logging on or off, click the Options menu and select Log To Text. The default configuration has text logging selected, and I recommend keeping it that way.

When you are ready to begin the backup process, click the Actions menu and select Backup, which will open the dialog box shown in Figure B. After entering (or navigating to) the file name, click Open to start the backup. Alternatively, you can specify a remote server by entering the UNC path to the print server in the Target server field.

Figure B
This dialog box allows you to specify the backup location.

If you’ve selected to have logging performed, you will find a new file called PM.LOG in a new directory located at %systemroot%\system32\spool\pm after the backup completes. This directory is the default location for subsequent backups performed on that particular server. Figure C shows the content of a typical backup file created with the Print Migrator utility. Files are saved with the standard .CAB extension that is used extensively in Windows.

Figure C
This is a view from inside the Print Migrator backup file.

Restoring print settings is almost as simple as the backup process. To restore settings, click the Actions menu and select Restore. You do have some options to configure on the restore, however, as shown in Figure D below. The options are:

  • Suppress Warning Popups. Selecting this option will speed up the restoration process by disabling the typical warning dialogs that would normally require user intervention, such as OK and Cancel. All warnings are still written to the log, which can be examined later if desired.
  • Replace (Overwrite) Existing Printer Queues. Unlike previous versions of Print Migrator, Print Migrator 3.0 allows you to consolidate the printer configurations of many print servers into one print server. Selecting this option will overwrite any existing printer configuration on the target server. Use this with caution.
  • Attempt LPR To SPM Conversion. Selecting this option will attempt to convert LPR ports to a Standard TCP/IP Port Monitor if the device is present on the network. If the device is not found, you will receive an error message stating such and the LPR port will be migrated instead. You will, however, need to install the LPR port monitor before you can make use of the LPR port. The Standard TCP/IP Port Monitor is the de facto standard for the future of Windows printing due to its superior performance and scalability when compared to LPR.
  • Restore File Shares. Print Migrator backs up file shares, print shares, and user permissions during the backup process. Print Migrator, by default, does not restore the file share information. Select this option to merge the file share information onto the target server.

Figure D
This is where you configure your restoration options.

Once you’ve made your selections, click Open to start the restoration process.

Command line functionality
Print Migrator runs from the command line just as easily as it does from within the Windows GUI. Using Print Migrator from the command line allows you to create automated scripts to make the migration process easier and quicker. To use Print Migrator, type printmig options server where “options” are the special command line switches you can use to customize Print Migrator and “server” is the name of the server to which you want to migrate.

The options for use with Print Migrator from the command line are:

  • ?
    Displays a list of available commands.
  • -b
    Instructs Print Migrator to perform a backup using the path and file name supplied.
  • -r
    Instructs Print Migrator to perform a restoration using the path and file name supplied.
  • -o
    Instructs Print Migrator to overwrite existing printer configuration on the target print server.
  • -s
    Instructs Print Migrator to restore file shares.
  • -l
    Instructs Print Migrator to attempt conversion of LPR ports to SPM ports.
  • -i
    Instructs Print Migrator to suppress the display of warning dialogs.

Potential printer driver pitfalls
Of course, nothing in life is perfect and, naturally, Print Migrator has some unique printer-driver issues that you need to be aware of. To begin, print drivers in Windows NT 4.0 are known as Version 2 drivers and are referred to as kernel-mode drivers. Kernel-mode drivers are problematic because a kernel-mode driver failure can bring the entire print server down.

With the introduction of Windows 2000, Version 3 print drivers—known as user-mode drivers—appeared. If a user-mode driver experiences an error, only the print spool service will be affected. It is much simpler and quicker to restart the spooler than it is to restart the server itself. Additionally, any other services running on that server will not experience the failure. (Just as a note, Windows .NET Server provides for automatic restarting of the spooler by default.)

When you migrate a Windows NT print server using Print Migrator, a Windows NT 4.0 source machine will carry over its Version 2 drivers to the target machine. This serves to provide a high level of interoperability with your legacy Windows NT 4.0 Workstation clients on the network.

By itself, having Version 2 printer drivers on your Windows 2000 server is not a big issue. The real problem comes when you perform a restoration of a Windows 2000 print server to a Windows NT 4.0 SP6a print server. Windows NT 4.0 does not support the version 3 drivers and, therefore, the print migration will not result in a functional Windows NT 4.0 print server. You will need to manually install the proper version 2 drivers to correct this situation.

Other points to remember
A few more points that you should keep in mind when dealing with the Print Migrator utility are:

  • The source and target computers must both be running on an x86 compatible CPU.
  • The user performing the restoration onto the target computer must have local administrative rights on that computer.
  • If you are using Print Migrator on a cluster, either to back up or restore, you must specify the cluster name in the server field in the form of \\cluster_name.
  • Print Migrator does not migrate color profiles; you will need to perform this migration manually after the restoration.
  • Print Migrator does not migrate custom forms that you may have. You will need to perform this migration manually after the restoration.
  • When using Print Migrator remotely, you can perform operations on Windows 2000 Servers only.
  • When restoring print configuration in merge mode, several problems can occur due to data collision. If ports should happen to collide (by having the same port name), then the first port to be initialized will function properly; all subsequent ports with the same name will fail to initialize. If printer names should happen to collide, the printer that is written last to the target print server will survive. If printer share names should happen to collide, then the shares will be removed, allowing you to re-share the printers under unique names.

Go forth and migrate!
Using the Print Migrator 3.0 utility can help you easily and quickly migrate printers from your legacy print servers. With few exceptions, the process really is as simple as point and click. Should you be migrating from a Windows NT 4.0 SP6a source print server, you will want to take the extra time to run the fixprnsv.exe utility first before performing the migration.

Print Migrator 1.0 and 2.0 files can be used by Print Migrator 3.0; however, migration files created by any beta versions of Print Migrator 3.0 cannot be used with the final release version. Look to see Print Migrator 3.0 (or even later) in the Windows .NET Server Resource Kit, scheduled for release later this year. Now, armed with your new knowledge, go forth and migrate those old NT print servers!