Displaying CUPS shared printers in a user’s printer list on OS X Lion

cupsmac-osxshared-printers

Background

We have a primarily Linux environment, but we have 40 Macs to support. I'm trying to integrate them into our standardized print system. We have about 50 printers shared from a CUPS server with CUPS Browsing.

Current Status

I have modified /printers/etc/cupsd.conf by removing the BrowseLocalProtocols line and adding the line BrowseProtocols CUPS. Now I can see all of our printers when I open the Print & Scan pane in System Preferences. Unfortunately, none of the printers show up in the print dialog for any applications.

I can add printers to the list by clicking the + to add a printer in Print & Scan, selecting a printer, and clicking add. I get a dialog asking if I want to continue since a printer with the same name already exists. I'm not sure how modifying the printer on the CUPS server will affect the clients.

Is there any way to just have all cups shared printers show up in the user's printer list? Is there a way to add these printers on the command line or in a login script? Should I add them all on a system running Workgroup Manager and distribute them with MCX?

Best Answer

Using CUPS you should be able to directly use the servers printers, you just need to tell the cups client to use a specific server instead of the local spooler. You can do that by modifying /etc/cups/client.conf and adding or modifying the line containing ServerName to

ServerName cups.example.com[:port]

You should be able to see and use all printers on the CUPS server. If you have local printers connected to some Macs, you cannot use this, but you should still be able to add printers using lpadmin in a script for each printer:

lpadmin -p printer -E -v ipp://server/printers/printer
Related Topic