System Software Installation Notes

Accessing a Print Server From Various Operating Systems

Several kinds of networked print servers are available, the most notable being the LPR style print servers and the SMB-based print servers. Some printers come server-enabled while others can be connected to a third party print server (e.g. Lantronix, NetPrint, Linksys or Netgear routers). Printers may also be locally attached to a server machine and shared in a similar manner, via Samba or LPR.

Regardless of how the print server is defined, some setup needs to be done on any client system that will use the networked printer for printing. These notes address setting up the printer clients on various operating systems, after the print server itself has been set up (i.e. after you have set up the print server's IP address, ports and queues, according to the manufacturer's recommendations).

Depending on the client machine's OS, and the type of print server that is to be accessed, you should select and follow the setup steps outlined below that match your configuration.

Windows 2000, LPR Print Server

  1. Launch the Printers dialog, under Control Panel.
  2. Click "Add Printer"
  3. Pick "Local Printer" (ain't that intuitive). If you are given the option to have Windoze figure out what kind of drivers to install for "Your Plug 'n Pray" printer, avoid that like the plague. What Windoze knows about networked printers you could write on the back of a stamp (a very small stamp). It will only screw things up, trust us.

    Note: If the next choice says "Create a new port", you're in luck. Your version of Win 2K has been upgraded with a service pack to use the Winduhs Video Game (a.k.a. XP) printer dialog. Although Winduhs Video Game is supposed to be a more advanced OS, it is actually farther behind than Win 2K. The new setup procedure is more like Win NT than Win 2K. So, while Win 2K used to be able to figure out all the port information from the queue name, "it don't no more." Ain't service packs something special? BTW, we were being sarcastic about "in luck".

    If the next choice says "Add Port", see the next step, below.

  4. Pick "Create a new port" and fill in the dialog box:

    Port type: Standard TCP/IP  
    Printer name: Kinkos Printer name or IP address
    Port name: Port_1 - Plotter queue Whatever you defined
      Port_2 - Laser queue    in the server setup
      Port_3 - Photo queue  

    Device Type: Custom  

    Click "Settings" for the device type.

    Protocol: LPR  

    Queue Name:   From list above, matching port chosen

    Go to selecting printer type, printer drivers, etc., below.

  5. As mentioned above, if the next choice says "Add Port", you have the real Win 2K printer setup. Proceed as follows:

    Pick "Add Port" and fill in the dialog box:

    Port type: LPR  
    Server name: Kinkos Printer name or IP address
    Queue Name: Plotter whatever you defined
      Laser    in the server setup
      Photo  

  6. Select the printer type, printer drivers, etc., as appropriate for your printer.
  7. Do not share the printer.
  8. After the printer is defined, click "Properties" to set the printer's name, location and comment string.

Winduhs Video Game (a.k.a. XP), LPR Print Server

  1. Launch the Printers dialog, under Control Panel or from Start.
  2. Click "Add Printer".
  3. Pick "Local Printer" (ain't that intuitive).
  4. Pick "Create a new port" and fill in the dialog box:

    Port type: Standard TCP/IP  
    Printer name: Kinkos Printer name or IP address
    Port name: Port_1 - Plotter queue Whatever you defined
      Port_2 - Laser queue    in the server setup
      Port_3 - Photo queue  

    Device Type: Custom  

    Click "Settings" for the device type.

    Protocol: LPR  

    Queue Name:   From list above, matching port chosen

  5. From the drivers page, select the printer type, printer drivers, etc., as appropriate for your printer.
  6. Do not share the printer.
  7. After the printer is defined, click "Properties" to set the printer's name, location and comment string.

Note: apparently, although Winduhs Video Game is supposed to be a more advanced OS, it is actually farther behind than Win 2K. The setup procedure is more like Win NT than Win 2K. Win 2K seems to be able to figure out all the port information from the queue name but Win VG does not.

Winduhs 2003, LPR Print Server

Pretty much like Winduhs VG except the cartoon graphics are from the X-men instead of Pokemon.

  1. Launch the Printers dialog, under Control Panel or from Start.
  2. Click "Add Printer".
  3. Uncheck "Automatically detect and install my Plug and Play printer". In many cases, it is not a sound idea to let Windoze figure anything out. This goes double for Plug and Pray.
  4. Next, pick "Local Printer" (ain't that intuitive).
  5. Pick "Create a new port" and fill in:

    Port type: Standard TCP/IP  

  6. At this point, another Wizard (a.k.a. dialog box) pops up. Fill in:

    Port type: Standard TCP/IP  
    Printer name: Kinkos Printer name or IP address
    Port name: Port_1 - Plotter queue Whatever you defined
      Port_2 - Laser queue    in the server setup
      Port_3 - Photo queue  

    Device Type: Custom  

    Click "Settings" for the device type.

    Protocol: LPR  

    Queue Name:   From list above, matching port chosen

  7. From the drivers page, select the printer type, printer drivers, etc., as appropriate for your printer.
  8. Do not share the printer.
  9. After the printer is defined, click "Properties" to set the printer's name, location and comment string.

Winduhs 7, LPR Print Server

  1. Launch the Printers dialog, under Control Panel, Hardware and Sound, "View devices and printers".
  2. Click "Add Printer".
  3. Pick "Add a local printer" (ain't that intuitive).
  4. Click the "Create a new port" button and then select "Standard TCP/IP" from the "Type of port:" dropdown list.
  5. Click "Next".
  6. On the next page, that says "Type a printer hostname or IP address" fill in:

    Hostname or
    IP address:
    Kinkos Printer name or IP address
    Port name: Plotter whatever you defined
      Laser    in the server setup
      Photo  

  7. Uncheck the "Query the printer and automatically select the driver to use" checkbox. Checking it is pointless, since Windoze is hopeless at figuring anything out.
  8. Click "Next".
  9. On the "Additional port information required page", check the "Custom" button and then click the "Settings..." button.
  10. This will pop up the "Configure Standard TCP/IP Port Monitor" dialog box, whereupon you should fill it in with much of the same information that you already supplied in the previous dialog boxes (this is why it is called a wizard):

    Port Name: Plotter whatever you defined
      Laser    in the server setup
      Photo  
    Printer Name
    or IP address:
    Kinkos Printers name or IP address
    Protocol: LPR  
    Queue Name:   From list above, matching port chosen

  11. Click the "OK" button, followed by the "Next" button on the main dialog.
  12. Select the printer type, printer drivers, etc., as appropriate for your printer. Click the "Next" button.
  13. Give your printer a name and click the "Next" button.
  14. After the drivers are installed, do not share the printer. Check the "Do not share this printer" button and click the "Next" button.
  15. If you want to see if everything is working, click the "Print Test Page" button. When you are done, click the "Finish" button.
  16. After the printer is defined, from the Printers Control Panel, right click on the printer and then select "Printer properties" to set the printer's name, location and comment string.

Winduhs NT (still the best), LPR Print Server

Pretty much like Winduhs VG except the graphics are not as cartoonish and you may have to figure a few things out. Left as an exercise to the reader.

Linux (CUPS), LPR Print Server

  1. Launch the CUPS UI via your Web browser. You'll probably need to do it on localhost unless you put your remote machine's IP address in /etc/rhosts:

    http://localhost:631

  2. Pick the "Administration" item.
  3. Click "Add Printer" and fill in the form that appears.

    Printer Name: DPGenicom

    Description: Data Processing Genicom line printer

    Location: Computer Room

    If you wish to set up a line printer that uses the Raw protocol to print ASCII text, without modification (e.g. Genicom, DataProducts), proceed as follows:

    Type: AppSocket/JetDirect   (from dropdown list)

    URI: socket://10.100.0.20:10001/PORT1 (this example is for a NetPrint 500/100 which uses port 10001 [by default] and has a queue name of PORT1 [by default])

    Note that you determine the IP number, port number and queue name from how you set up the print server but you should always use "socket://".

    Make: Raw

    Model: Raw queue

    If you wish to set up a line printer that uses the LPD protocol to print Postscript text (as well as most other types of documents, via CUPS automatic detection and conversion to Postscript), proceed as follows:

    Type: LPD/LPR server   (from dropdown list)

    URI: lpd://kinkos/Laser (this example is for a Lantronix EPS-2 which has a queue called "Laser" on Port_2)

    Note that you determine the IP number and queue name from how you set up the print server but you should always use "lpd://".

    Make: Postscript

    Model: Generic postscript printer

SMB Print Server Setup

To utilize a printer that is set up on a print server that shares its printers via SMB (i.e. Winduhs network share), first install the printer on the machine that will control it and make it a shared printer. If the printer is one of those really clever printers that knows how to do SMB all on its own, you will probably have to set it up via the Web UI that it undoubtedly has built in. In either case, you should be able to see the printer from a regular, networked Windoze computer by launching Windows Explorer or My Network Places (from the desktop) and navigating through the network tree until you happen upon it. Until you can do this, proceed no further but return to your printer's setup and get the share working.

Make a note of the full name of the printer (e.g. \\MrSpooler\MrPrinter). It is a good bet that you will need this UNC pathname (below) because, in a total break with stupid tradition, there is often no way to browse for the printer when it comes time to enter its name. You really should write the name down.

OK, time to follow the steps below for the OS in question.

Windows 2000, SMB Print Server

To add a networked printer from Windows 2000, do the following:

  1. Launch the Printers dialog, under Control Panel.
  2. Click "Add Printer".
  3. Pick "Network Printer".
  4. Select "Type the printer name, or click Next to ..." and then click "Next".

    The browser will come up and let you surf over to the printer to be installed in the network tree. Click on the printer, to select it, and then click "Next" to proceed with the install.

  5. If you are installing a printer shared by Samba and at this point Windoze asks you if you want to set up the printer driver on your local machine because the server that has the printer on it does not have the print driver installed, you may want to click "Cancel" and then go back to the part about CUPS Under Samba, in the CUPS installation notes, where we talk about how Samba is brokey and how you need to add the user setting up the printer to the "printer admin" option in the Samba config file, temporarily. Do that and try again.

    On the other hand, if Samba is not supplying the printer drivers (e.g. you have a standard postscript printer and CUPS is the printing system being used on your print server or you have one of those clever, networked printers), you may simply install the printer's regular drivers on your local machine and carry on. When you print, the printer's driver will produce the proper output (e.g. postscript, PCL) which the printer (or CUPS) should know how to deal with just fine.

  6. Answer "No" to the default printer question (unless you acutally want it as your default) and click "Next". Then click "Finish".

Your printer is installed. For a Samba share, if you temporarily added the user to the "printer admin" option, you can remove them now. Also note that for Samba shares, if you click on "Properties" for some printers (e.g. to set the comments), you will be told that the driver for the printer is not installed, blah, blah, blah. Its a lie. Always click "No", unless you want to go down the Windoze Rabbit Hole to Driverland. You should probably eat the mushrooms first.

Winduhs Video Game (a.k.a. XP), SMB Print Server

On later versions of XP (e.g. Service Pack 3), you may have to apply a couple of changes to the Registry before your system will let you log in to the CUPS server and thereby gain access to the printers. If you try to open a share point on the CUPS server and you continually get the userid/password prompt, despite the fact that you are entering the correct userid and password (remember that it is the Samba userid/password which is not necessarily the login userid password), you may wish to try this fix.

Open the Registry Editor by typing "regedt32" at a command prompt or into the Run box. When the editor launches, add these two keys:

HKLM\System\CCS\Services\LanmanWorkstation\Parameters
  DWORD  DomainCompatibilityMode = 1
  DWORD  DNSNameResolutionRequired = 0

After you save these two parameters, you should be able to login and set up the printers. Follow the steps below to add a networked printer from Windows XP:

  1. Launch the Printers dialog, under Control Panel or from Start.
  2. Click "Add Printer".
  3. Pick "Network Printer".
  4. Select "Browse for a printer" and click "Next".

    The browser will come up and let you surf over to the printer to be installed in the network tree. Click on the printer, to select it, and then click "Next" to proceed with the install.

  5. Answer Yes to the prompt about installing malicious, virus-infested drivers on your computer. The only malicious, virus-infested software on your computer that you have to worry about is Windoze Vista. If this step looks like it isn't working and you are trying to access a printer shared by Samba, you may want to click "Cancel" and then go back to the part about CUPS Under Samba, in the CUPS installation notes, where we talk about how Samba is brokey and how you need to add the user setting up the printer to the "printer admin" option in the Samba config file, temporarily. Once you've done that, try again.

    On the other hand, if Samba is not supplying the printer drivers (e.g. you have a standard postscript printer and CUPS is the printing system being used on your print server or you have one of those clever, networked printers), you may simply install the printer's regular drivers on your local machine and carry on. When you print, the printer's driver will produce the proper output (e.g. postscript, PCL) which the printer (or CUPS) should know how to deal with just fine.

  6. Answer "No" to the default printer question (unless you acutally want it as your default) and click "Next". Then click "Finish".

Your printer is installed. For a Samba share, if you temporarily added the user to the "printer admin" option, you can remove them now. Also note that for Samba shares, if you click on "Properties" for some printers (e.g. to set the comments), you will be told that the driver for the printer is not installed, blah, blah, blah. Its a lie. Always click "No", unless you want to go down the Windoze Rabbit Hole to Driverland. You should probably eat the mushrooms first.

Winduhs 2003, SMB Print Server

Maybe the X-men shot some of the code but there appears to be a bug in Windoze 2003 whereby the EnumPrinters API does not return locally connected, network shared printers unless they are defined in this manner. So, if you have problems with installed printers not showing up in your favorite app, this could well be the problem.

To access a networked printer so that it will be visible to EnumPrinters, do this:

  1. Launch the Printers dialog, under Control Panel.
  2. Click "Add Printer".
  3. Uncheck "Automatically detect and install my Plug and Play printer". In many cases, it is not a sound idea to let Windoze figure anything out. This goes double for Plug and Pray.
  4. Next, pick "Local Printer" (ain't that intuitive).
  5. Pick "Create a new port" and fill in:

    Port type: Standard TCP/IP

  6. At this point, another Wizard (a.k.a. dialog box) pops up. Fill in the UNC path name that you wrote down (above).
  7. From the drivers page, select the printer type, printer drivers, etc., as appropriate for your printer.
  8. Do not share the printer.
  9. After the printer is defined, click "Properties" to set the printer's name, location and comment string.

Windoze Vister, SMB Print Server

To add a networked printer from Windoze Vister, do the following:

  1. Try to find the Control Panel application where the clever guys from Redmond have hidden it. From there, if you can find "Printers", launch the Printers dialog (you may wish to change to "Classic View" so that you can see all of the choices).
  2. Click "Add a Printer".
  3. Pick "Add a network, wireless or Bluetooth printer" and click Next.
  4. At this point, Vister will show you the message "Searching for available printers".

    If the browser comes up and lets you surf over to the printer to be installed, in the network tree, click on it to select it and proceed with the install.

  5. Otherwise, after about 10 minutes of searching, when nothing comes up, you can click the Stop button and then click on the big "The printer that I want isn't listed" button. On the next dialog, check the "Select a shared printer by name" button and then enter the server name and printer share name manually (you can even use an IP address) in the standard Windoze form. For example, one might use:

    \\192.168.11.1\Laser

    Or, if you are feeling lucky, you can once again try selecting "Browse for a printer" and clicking "Next" (apparently, this browse for printers is different from the other browse for printers).

    The browser will come up and let you surf over to the printer to be installed in the network tree. Click on the printer, to select it, and then click "Next" to proceed with the install.

  6. If requested, enter a username and password that has permissions to use the shared printer. If you enter what you think is the correct user name and password a few dozen times and Windoze keeps giving you the boot-ski, and you are trying to access a printer shared by Samba, you may want to click "Cancel" and then go back over to the Samba server and add a user name and password with the smbpasswd command. The user names and passwords used by Samba aren't the same as those used to login to Windoze. Once you've done that, try again with the correct user name and password.
  7. Unless you are accessing a RAW printer queue for a printer that actually requires a particular device driver (in which case you'll need to set up the printer driver, either using a local copy of the driver or one that is supplied by Samba, as outlined for XP, in the previous section), Vister now has support for CUPS built-in. It should skip the step about picking a device driver for the printer and just install the CUPS printer driver (for those who care, you should see something like cupsui6.dll, cupsps6.dll, cups6.ini, and pscript.ntf on the printer test page). Whenever you print something, the CUPS driver will produce standard postscript output, which CUPS knows how to deal with just fine.
  8. You can, at this point, check the box that makes this printer the default or not, if don't want it as your default. After clicking Next, you can print a test page (we recommend it). When you're done, click Finish.

Your printer is installed. You can click on Properties for this printer (e.g. to set the comments), but you probably won't need to. Since Vister knows about CUPS, it clones all of the information set in the CUPS printer database, so things like the Location, Comment and Model will be filled in for you.

Winduhs 7, SMB Print Server

Before you try to gain access to the printers on your CUPS server, you need to apply a couple of changes to the Registry on your Windows system so that it will let you log in to the server. Without the patches, if you try to open a share point on the CUPS server, you will continually get the userid/password prompt, despite the fact that you are entering the correct userid and password (remember that it is the Samba userid/password which is not necessarily the login userid password).

Open the Registry Editor by typing "regedt32" at a command prompt or into the Run box. When the editor launches, add these two keys:

HKLM\System\CCS\Services\LanmanWorkstation\Parameters
  DWORD  DomainCompatibilityMode = 1
  DWORD  DNSNameResolutionRequired = 0

After you save these two parameters, you should be able to login and set up the printers. Follow the steps below to add a networked printer from Windows 7:

  1. Launch the Printers dialog, under Control Panel, Hardware and Sound, "View devices and printers".
  2. Click "Add Printer".
  3. Pick "Add a network, wireless or Bluetooth printer".
  4. After Windoze searches for available printers for a while and then doesn't find anything, click the "The printer that I want isn't found" choice (if you're really lucky, the printer you want will be found and you can just pick it from the list, but we ain't holding our breaths).
  5. Unless your printer was found in the previous step, on the next page, select "Browse for a printer" and click "Next".

    The browser will come up and let you surf over to the printer to be installed in the network tree. Click on the printer, to select it, and then click "Next" to proceed with the install.

  6. Windoze will ask you for your user name and password to gain access to the printer on the server. If you enter what you think is the correct user name and password a few dozen times and Windoze keeps giving you the boot-ski, and you are trying to access a printer shared by Samba, you may want to click "Cancel" and then go back over to the Samba server and add a user name and password with the smbpasswd command. The user names and passwords used by Samba aren't the same as those used to login to the server. Once you've done that, try again with the correct user name and password.
  7. Answer Yes to the prompt about how you trust the server not to install malicious, virus-infested drivers on your computer. The only malicious, virus-infested software on your computer that you have to worry about is Windoze Vista. If this step looks like it isn't working and you are trying to access a printer shared by Samba, you may want to click "Cancel" and then go back to the part about CUPS Under Samba, in the CUPS installation notes, where we talk about how Samba is brokey and how you need to add the user setting up the printer to the "printer admin" option in the Samba config file, temporarily. Once you've done that, try again.

    On the other hand, if Samba is not supplying the printer drivers (e.g. you have a standard postscript printer and CUPS is the printing system being used on your print server or you have one of those clever, networked printers), you may simply install the printer's regular drivers on your local machine and carry on. When you print, the printer's driver will produce the proper output (e.g. postscript, PCL) which the printer (or CUPS) should know how to deal with just fine.

  8. Answer "No" to the default printer question (unless you acutally want it as your default). If you want, you can print a test page by clicking the "Print a test page" button. When you are done, click "Finish".
  9. After the printer is defined, from the Printers Control Panel, right click on the printer and then select "Printer properties" to set the printer's name, location and comment string. At the very least, you will want to turn off sharing of the printer, since it is already shared on your network by the print server.

If this works, then your printer is installed. For a Samba share, if you temporarily added the user to the "printer admin" option, you can remove them now.

If, on the other hand, this procedure fails, especially if you get the idiotic error 214 return code, along with a Winduhs message that says something lame about "Windows cannot connect to the printer", your problem may be caused by the NT Lan Manager authentication level and you can try fixing it like this:

  1. Open Local Security Policy under Administrative Tools.
  2. Navigate through Security Settings/Local Policies/Security Options to the page with the security option settings.
  3. Find the field "Network Security: LAN Manager authentication level" and set it to "Send LM & NTLM - use NTLMv2 session security if negotiated".

Or, you might want to try the following approach:

  1. Launch the Printers dialog, under Control Panel, Hardware and Sound, "View devices and printers".
  2. Click "Add Printer".
  3. Pick "Add a local printer" (ain't that intuitive).
  4. Pick "Create a new port" and fill in:

    Type: Local Port

  5. For the Port Name, enter the network path to the printer (e.g \\ComputerName\SharedPrinterName).
  6. You should now be able to choose your printer from the list of printer drivers that are installed on your local machine (we already know that Samba is not supplying the printer drivers because that option blew up under the first approach, thanks to Windoze' crackerjack security). Hopefully, you have a standard postscript printer and CUPS is the printing system being used on your print server. If this is the case, you may simply install the printer's regular drivers on your local machine and carry on. When you print, the printer's driver will produce the proper output (i.e. postscript) which CUPS should know how to deal with just fine.

    Alternately, if you have a networked print server, installing the printer's regular drivers, regardless of whether it is postscript or not should work fine too.

    The only major problem will be if your printer isn't a postscript printer and you are trying to print to a CUPS printer on your print server. Then, you need to find a set of postscript drivers that will work on Windoze 7. Good luck with that plan. Since Windoze 7 now only accepts 64-bit printer drivers, the generic CUPS drivers no longer work. And, the Adobe printer drivers seem to be missing. You'll probably need to search the net to find one, although we have used the Kyocera FS-1030D driver with success.

  7. If asked, choose whether you want to use the driver that is currently installed or replace it.
  8. If asked, name the printer.
  9. If asked, make sure you choose not to share the printer.
  10. If asked, choose whether to set the printer as the default printer or not.
  11. On the other hand, if you weren't asked, after the printer is defined, you can go to the Printers Control Panel, right click on the printer and then select "Printer properties" to set the printer's name, location and comment string. At the very least, you will want to turn off sharing of the printer, since it is already shared on your network by the print server.

This second approach has usually worked for us but, with such flakeware, "One never knows, do one?"

Sharing Printers via Samba

Printers on any Unix/Linux system that are managed by one of the typical spoolers (e.g. CUPS, BSD printing) can be shared to the Windows nework via Samba. We have written additional notes on this special case of SMB printer sharing, that can be found in the CUPS Under Samba section of the CUPS Networked Printer Setup notes. These note describe specifically how to set up a CUPS printer for sharing by Windoze.