Environment
Novell iPrint for NetWare
Situation
The Print Manager database file (psmdb.dat) is suspected to be corrupt. PAGen.exe (see KB 7004851) is one way to recover from the corruption. However, PAGen is not always the optimal choice. The steps listed in this TID can be preferred over PAGen if the following conditions exist:
- Retaining printer driver profiles is important
- The print manager database is healthy enough to load the print manager
- 3rd party accounting data is stored in the print manager database
- PAGen is not able to generate the printer objects from the CSV file
Resolution
These resolution steps will move printer agents from the corrupt Print Manager to a new Print Manager on a different server. Then, that new Print Manager will be moved to the production server. Note that changing the Print Manager name does not affect end user printing. Experience shows that following these steps will resolve the corruption observed in the Print Manager database. These steps assume that the corruption does not prevent the Print Manager from loading.
- Determine which address your Production Print Manager is bound to:
- Go to http://<IPorDNSofProductionPrintManager>/ipp
- Hover your mouse over a printer agent link
- View the link. Specifically, make note of the address which follows ippPrinterURL=ipp://[NoteTheAddressHere]/ipp/....
- This piece of information will be used in step 6.
- Create a new Print Manager to the temp server
- Choose a name which you comfortable using long-term.
- Copy the printer driver profiles to the new Print Manager on the temp server
- Move the printer agents from the production print manager to the new print manager
- Caution: A Printer Agent "Move" is recorded to the Print Manager as a delete. This results in every workstation in auto uninstalling each "deleted" iPrint printer. To prevent this from ocurring, choose one of the options below:
- Option 1: Perform these steps during after hours when workstations are shutdown.
- Option 2: Remove the printers from the "Deleted Printer Agent Redirection" list as they appear. This requires quick and consistent action throughout the move operation. Open a dedicated browser page or tab to iManager -> iPrint -> Manage Print Manager -> Printer Agent Redirection -> Deleted Printer Agent Redirection. Through the entire move operation, click Refresh, check the box for all printers which show up as a result of the "move", click Apply, click Refresh, etc. Between the time which a printer is moved and you manually removing the printer from the "deleted" list, end users will potentially have their iPrint printers auto removed from their workstations.
- iManager -> iPrint -> Manage Print Manager -> Printer Agents -> Tasks
- Click the top "Name" check box
- Click the "Move" button
- Select the new Print Manager on the temp server
- This will take a long time. This page will likely time out. Ignore the Bad Gateway 502 timeout error. To view the progress of the printer agent move, go to the /psmstatus page of each print manager. Refresh the /psmstatus page which lists all of the printer agents. You will see the printer agents being removed from the production server and added to temp server.
- Caution: A Printer Agent "Move" is recorded to the Print Manager as a delete. This results in every workstation in auto uninstalling each "deleted" iPrint printer. To prevent this from ocurring, choose one of the options below:
- Verify the success of the printer agents move
- Go to the /psmstatus page -> "Advanced NDPS Manager Information" button (at the bottom)
- Click the "Generate Report" link
- Run reports on Drivers and Driver Profiles. Verify that the expected associations exist.
- Create a test printer driver profile to the new print manager
- verify the problem we intend to fix is actually resolved.
- Note: You can run these reports while the move is taking place, but you should not attempt to create a printer driver profile while the move is taking place.
- If all checks out, move the new print manager to the production server
- unload NDPSM on both the production and temp servers
- load NDPSM on the production server. Be sure to choose the newly created Print Manager.
- When loading NDPSM, be sure to bind the print manager to the same address which was found in step 1. If it was a DNSNAME, use the /DNSNAME switch while loading NDPSM. If it was an IP address, then don't use any address switches.
- When loading the new print manager to the production server, follow the prompts as follows:
- The NDPS Manager's database resides on volume '<volumeName>'. The database for the NDPS Manager is not on this file server or the volume containg the database is not mounted. The database must be moved to a mounted volume on this file server to continue.
- <Press ENTER to continue>
- Move database?
- Yes
- Choose the volume you wish to copy the database file to.
- Verify the print manager moved successfully.
- Go to the /psmstatus page -> "Advanced NDPS Manager Information" button (at the bottom)
- Click the "Generate Report" link
- Run reports on Drivers and Driver Profiles. Verify that the expected associations exist.
- Create a test printer driver profile to the new print manager (now on the production server)
- verify the problem we intend to fix is actually resolved.
Note: If 3rd party accounting software is used with iPrint, be sure to assign appropriate rights to the Print Manager object so users can modify their account balances.