Printing is a stepchild in most networked IT environments. Often the
setup reminds of a jungle: different protocols, printer languages and
networking protocols, central spooling and peer-to-peer printing
co-exist side by side -- but mostly not very peacefully. Admin time is
often eaten by debugging a users' print problems. The overall costs of
the undertaking is seldomly tracked and often not known at
Recently we see a tendency to migrate network printing
(alongside other services) over to Linux-based servers (even where the
clients remain with Microsoft operating systems), with CUPS at the
head of the migration movement. CUPS works very closely with Samba to
extend its hand to Windows-based clients.
CUPS offers some unique features no other spooling system can
offer. It is a network-transparent PostScript-RIP in software,
allowing all clients to consolidate on PostScript drivers (even if the
target printer is a non-Postscript inkjet). Based on the new IETF
standard for network printing, IPP (Internet Printing Protocol), it is
designed to replace the venerable, but "kludgy" LPD.
CUPS offers all clients the full feature and finishing set of the
printers (various resolutions, duplex, stapling, punching, coversheets
or folding) through its support and extension of the PPD
quasi-standard (PostScript Printer Descriptions). It ships now as the
default printing system on most Linux distros; it is the printing
system for Mac OS X; it is easy to install on all commercial UNIXes
and there is a Windows-client in development.
Native clients benefit from an automatic setup, enabling them to
discover available printers and drivers through the network, and
sparing any specific admin or user interventions on the clients if
there are reconfigurations or printer additions and deletions on the
Windows clients may get their drivers downloaded and installed
automatically with the help of Samba'a "point and print"
CUPS is able to provide accounting about every job (logging the number
of pages, usernames, printername, time of print etc.) to provide a
means of control and financial planning for the efficient distribution
of ressources. It supports other established internet standards, such
as SLP (Service Location Protocol), LDAP (Lightweight Directory Access
Protocol), TLS (Transport Layer Security), and others.
This tutorial will show how to set up a print server with CUPS and
And all this will
not only be explained in theory, but accompanied by many live
- How to set up the printing infrastructure on the Linux
server: CUPS, GhostScript, and Foomatic>
- How to configure Samba to share CUPS print queues with Windows clients
(the old "LanMan" method).
- How to make print queues and drivers available for "Point and Print"
(the new "MS RPC" method).
- How to understand and use CUPS as a network PostScript RIP (PostScript
drivers on clients, even for non-PostScript target devices)
- How to upload drivers to the Samba server from a Windows client using
the Microsoft "Add Printer Wizard" (APW).
- How to upload drivers to the Samba server from a Linux workstation using
the smbclient and rpcclient commands.
- How to correctly set persistent driver defaults for all clients
The approach to the workshop is flexible. Participants will be able to
ask for emphasis on certain topics at the beginning of the
session. They might even bring their laptops and get help to setup
their printing system or troubleshoot some weird problem....
Target audience: Everybody -- experienced network administrators as well
as "home-only" users.
Required skills: None -- but danger! Your knowledge about traditional
Unix printing might look very obsolete after attending this session...