This iPrint Linux XMLGenerator script manipulates a NetWare generated XML file to be compatible with the Linux XML import feature. After the script has manipulated the NetWare XML, the newly created Linux compatible XML can be used with the xml-import feature to auto-create the NetWare printer agents to the Linux Print Manager. Printer agents will exist on the original NetWare Print Manager and the Linux Print Manager. iPrint printers installed to workstations will continue to print to the NetWare Print Manager until the administrator changes DNS assignments or redirects the NetWare printer agents to the Linux printer agents.
OES1 and OES2 (32 and 64 bit)
Features Not Implimented Yet:
- Automatic printer driver associations are not attempted with this script. You must manually associate printer drivers to the Linux printer agents using iManager after the script and xml-import command have been executed.
The iprint-driver-copy script can be used in conjunction with this script to auto copy the NetWare Broker printer drivers to the Linux Driver Store. After the iprint-driver copy script is executed, the administrator can manually associate printer drivers to printer agents using iManager.
The iprint-driver-copy script can be found here:
- Download the PSMInfo.zip file.
- Unzip the file and copy the PSMInfo.nlm to the Print Manager server's sys:\ndps\ directory on the Netware server.
- Load the PSMInfo.nlm.
- Copy the auto-generated sys:\ndps\PSMINFO.XML on the Netware server to the Linux server's tmp directoy.
- Download the iprint-linux-XMLGenerator-1.1.tgz file to /tmp directory.
- Open a Terminal window and type “su”.
- Enter root’s password.
- Extract the script from the tarball.
#tar –xzvf iprint-linux-XMLGenerator-1.1.tgz
- Make the script executable.
#chmod 755 iprint-linux-XMLGenerator-1.1.sh
- Run the script to make a new XML file compatible for iprintman. The file will be called import.xml
#./iprint-linux-XMLGenerator-1.1.sh -f [/directory/PSMINFO.XML] -t [Tree_Name] -m CN=[manager_Name],OU=[Container],O=[Organization] -s [hostname.domain.com] -d [eDirServer.domain.com] -i CN=[Driver_Store_Name],OU=[Container],O=[Organization] -c OU=[Container],O=[Organization]
Example:./iprint-linux-XMLGenerator-1.1.sh -t JoeUser-tree -m cn=printmanager,ou=print,o=novell -s joeserver.novell.com -i cn=driverstore,ou=print,o=novell -f /tmp/PSMINFO.XML -c ou=print,o=novell
- Run iprintman to import the newly created XML file to populate the Print Manager.
#iprntman psm --xml-import ./import.xml
Explanation of the switches used:
Note: The arguments will be executed in the order listed on the commandline.
-t Used to specify the tree name.
-m Used to specify the fully distinguished for the Manager.
-s Used to specify the DNS name or IP address for the server hosting the manager.
-i Used to specify the fully distinguished for the Driver Store.
-f Used to specify the file path to the XML file.
-c Used to specify the context of where to place the print objects.
-d Used to specify the DS server's DNS name or IP address
-h This switch will display the help menu.
Disclaimer: As with everything else at Cool Solutions, this content is definitely not supported by Novell (so don't even think of calling Support if you try something and it blows up).
It was contributed by a community member and is published "as is." It seems to have worked for at least one person, and might work for you. But please be sure to test, test, test before you do anything drastic with it.