CUPS Administrative Guide

CUPS Administrative Guide
eBook: $23.99
Formats: PDF, PacktLib, ePub and Mobi formats
save 50%!
Print + free eBook + free PacktLib access to the book: $63.98    Print cover: $39.99
save 47%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Table of Contents
Sample Chapters
  • Install and configure the CUPS server and set up clients
  • Manage Printers through the command line and web interface and manage users
  • Monitor the CUPS server along with filtering and file typing
  • Secure your CUPS server

Book Details

Language : English
Paperback : 248 pages [ 235mm x 191mm ]
Release Date : September 2008
ISBN : 1847192580
ISBN 13 : 9781847192585
Author(s) : Ankur Shah
Topics and Technologies : All Books, Other, Open Source

Table of Contents

Chapter 1: Introduction
Chapter 2: Building and Installing CUPS
Chapter 3: Printer Management
Chapter 4: Managing Multiple Printers at a Time
Chapter 5: CUPS Server Management
Chapter 6: Client Setup
Chapter 7: Quota Management
Chapter 8: Monitoring CUPS
Chapter 9: File Typing and Filtering
Chapter 10: Security
  • Chapter 1: Introduction
    • Overview of the CUPS Features
    • History of Printing in UNIX
    • Printing with Personal Computers
    • Evolution of CUPS as a Printing System
      • Architecture of CUPS
      • Network Printing
    • CUPS Features
      • Support for Internet Printing Protocol (IPP)
      • Compatibility with Other Print Systems
      • Support for Web Interface
      • Modular Architecture
      • Support of Postscript Printer Description Drivers (PPDs) in CUPS
  • Summary
  • Chapter 2: Building and Installing CUPS
    • Downloading Source Code
      • Compiling CUPS
    • Installing the Software
    • Installing a Binary Distribution
      • Building RPMs
      • Creating Binary Distribution with EPM
    • Installing a Portable Distribution
    • Installing an RPM Distribution
    • Installing CUPS from a Debian Distribution
    • Subversion Access
      • Compiling from Subversion
    • Running the Software
  • Installing CUPS Using the Package Manager on Linux
  • Testing CUPS
  • Summary
  • Chapter 3: Printer Management
    • Printer Drivers
      • PostScript Printer Description (PPD) Drivers
      • Non-PostScript Printers
      • Ghostscript Built-In
        • Filter
        • CUPS Raster
        • Ink Jet Server (IJS) Plug-in
        • Uniprint
        • CUPS DDK
        • Foomatic-RIP
      • Installing PPD
    • Managing Printer through the Command Line
      • Basic Command for Adding the Printer
      • Managing Printers from the Command-Line
      • Deleting Printers
      • Setting the Default Printer
      • Starting and Stopping Printers
      • Accepting and Rejecting Print Jobs
      • Checking Printer Status
      • Setting Quotas on a Printer
      • Restricting User Access to a Printer
      • Printing Banner Pages
      • Some More Printer and CUPS-Specific Commands
    • Managing Print Jobs through Command Line
      • Submitting Files for Printing
        • Checking the Status of Print Jobs
      • Choosing a Printer
      • Setting Printer Options
      • Printing the Output of a Program
      • Printing Multiple Copies
      • Checking the Printer Status
      • Canceling a Print Job
      • Moving a Print Job
    • Managing Printers using the CUPS Web Interface
      • Administration
      • Adding a New Printer
      • Managing Jobs
      • Find New Printers
    • Summary
  • Chapter 4: Managing Multiple Printers at a Time
    • Configuring Printer Classes
      • Features and Advantages
      • Implicit Class
    • Managing Printer Classes Through Command-Line
      • Adding a Printer to a Class
      • Removing a Printer from a Class
      • Removing a Class
  • Managing Printer Classes Through CUPS Web Interface
    • Adding a New Printer Class
      • Stop Class
      • Reject Jobs
      • Unpublished Printer
      • Cancel All Jobs
      • Delete Class
      • Modifying a Class
      • Setting up Printer Options for Class
      • Printing a Test Page for a Printer Class
      • Setting a Printer Class as Default
      • Set Allowed Users
      • Nested Printer Classes
  • Summary
  • Chapter 5: CUPS Server Management
    • System Requirement
    • Configuration Files
    • Classes Directives
      • Accepting
      • Printer
      • Class
      • DefaultClass
      • AllowUser
      • DenyUser
      • Info
      • Location
      • JobSheets
      • KLimit
      • PageLimit
      • QuotaPeriod
      • State
      • StateMessage
    • Client Directives
      • ServerName
      • Encryption
    • Server Directives
      • Editing the cupsd.conf File Via the Web Interface
    • Important Directives of cupsd.conf
      • Server Identity
        • ServerAdmin
        • ServerName
      • Server Options
        • LogLevel
      • Network Options
        • Listen
        • Port
      • Browsing Options
        • Browsing
        • BrowseOrder
        • BrowseAllow
        • BrowseDeny
        • BrowseProtocols
        • BrowseAddress
        • BrowseShortNames
      • Security Options
        • SystemGroup
        • AuthType
        • Location
      • ImplicitClasses
      • ImplicitAnyClasses
    • Printer Directives
      • Accepting
      • Printer
      • DefaultPrinter
      • AllowUser
      • DenyUser
      • DeviceURI
      • Info
      • Location
      • JobSheets
      • KLimit
      • PageLimit
      • QuotaPeriod
      • State
      • StateMessage
    • Concept of Operation Policies
    • Summary
  • Chapter 6: Client Setup
    • Setting up a CUPS Client
      • Print Queues
        • Manual Configuration of Print Queues
        • Automatic Configuration of Print Queues
        • CUPS Server's Communication with Clients
        • Load Balancing and Failsafe Operation
        • UNIX/Linux Client
      • LPD Clients
        • xinetd
        • inetd
      • Windows Clients
        • Printing with Samba
      • Printing with Other Systems
        • Printing with LPD Servers (lpd)
        • Printing with Mac OS X 10.2 or later
        • Printing with Windows Servers (smb)
        • LPD
        • Samba
    • Summary
  • Chapter 7: Quota Management
    • Setting up Quota in CUPS
      • job-k-limit
      • job-page-limit
      • job-quota-period
      • User Restrictions
      • Error Messages
    • Correct and Incorrect Accounting
    • Overview of the page_log file
    • Flaws of the CUPS Quota system
    • Other Accounting Tools
      • PyKota
        • Features of PyKota:
        • Checking Prerequisites and Downloading Application
        • Installation
    • Summary
  • Overview of the access_log File
  • Overview of the error_log File
    • How SNMP Helps Search for Network Printers
  • Overview of snmp.conf
    • Address
    • Community
    • DebugLevel
    • DeviceURI
    • HostNameLookups
    • MaxRunTime
  • How SNMP Behaves in the CUPS Web Interface
    • Overview of Basic Debugging in CUPS-SNMP
  • Overview of mailto.conf
  • Monitoring SNMP Printers
    • Downloading and Installing Cacti
      • Features of Cacti
    • Configuring an SNMP Printer with Cacti
  • Summary
  • Chapter 9: File Typing and Filtering
    • Architecture—CUPS Filtering System
    • An Overview of the mime.types file
    • An Overview of the mime.convs file
    • Adding Filetypes and Filters
    • Overview of Filter in CUPS
      • An Overview of pre-filters
      • An Overview of the pstops Filter
      • An Overview of the pstoraster Filter
      • An Overview of the imagetoraster Filter
      • An Overview of the imagetops Filter
      • Rasterto and other Printer-Specific Filters
      • Foomatic and cupsomatic Filters
      • Additional Filter Functionality
        • Raw Printing
        • Application/octet-stream Printing
        • PostScript Printer Descriptions (PPDs) for non-PostScript Printers
        • Cupsomatic/foomatic-rip versus Native CUPS Printing
        • Examples for Filtering Chains
        • Printing with Interface Scripts
        • An Overview of the CUPS Printing Process
        • Writing your own Filter or Printer Driver
    • Summary
  • Chapter 10: Security
    • Encryption Support in CUPS
      • Configuring SSL during CUPS Installation
      • Encryption Support
        • SSLListen
        • SSLPort
        • Encryption
    • Access Control
      • Address-Based Access Control
    • Authentication Support
      • Authentication using Password
        • Basic Authentication
        • Digest Authentication
      • Authentication using Certificates
        • System and Group Authentication
      • Kerberos Authentication
        • Configuring Kerberos on the System
        • Configuring CUPS to use Kerberos Authentication
      • Protection from Denial of Service (DoS) Attacks
        • CUPS Release Notes
    • Summary

Ankur Shah

Ankur Shah has been working with Linux/AIX for last 4 years as a System Administrator. His previous assignment was with Packt Publishing, where he worked as System Administrator and also started implementing CUPS. He completed his graduation in Computer Engineering from Nagpur University, India. He is currently working as a SAP Basis Administrator and also started working on Governance Risk and Compliance for access Control. He is also interested in Oracle Database Administration and Security.

He is the biggest fan of Kajol (a Bollywood actress) and dedicates this book to her. The day her movie releases is a day of celebration for him and he only parties once a year - 5th August - that's Kajol's birthday. It goes without saying that he watches all her movies several times - often dragging his friends and family to participate in his madness.

Submit Errata

Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

Sample chapters

You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

Frequently bought together

CUPS Administrative Guide +    WiX: A Developer's Guide to Windows Installer XML =
50% Off
the second eBook
Price for both: $37.50

Buy both these recommended eBooks together and get 50% off the cheapest eBook.

What you will learn from this book

  • The unique and powerful features of CUPS
  • Installing and compiling the CUPS server
  • Checking printer status, accepting and rejecting print jobs
  • Restricting user access
  • Setting different printer options, printing multiple copies
  • Classes, client, server, and printing directives
  • Important cupsd.conf directives that will help you manage network, server, browsing, and security options.
  •  Configuring manual and automatic print queues
  • Communicating with single and multiple servers with clients
  • Integrating with other systems like LPDs and Mac

In Detail

The Common UNIX Printing System (CUPS) is software that allows a computer to act as a print server, receiving print jobs from client computers, managing them, and sending them to the appropriate printer. It consists of a print spooler and scheduler, filters to convert print jobs to the format required by each printer, and a backend system to send the data to the chosen printer from client applications. Since every printer manufacturer does things differently, printing can be very complicated, and has always been a hard issue in the UNIX world for this reason. By providing a portable, modular printing layer, CUPS brings printing for UNIX into the modern age. It applies open standards for network printing through the Internet Printing Protocol (IPP) and uses platform-independent drivers (Postscript Printer Definition, PPD) to print. Today, CUPS is the default printing system for a large number of Linux distributions (Ubuntu, Fedora, etc.) and UNIX-based operating systems.

This book assumes that you have no knowledge of CUPS. It starts by telling you the story of how CUPS came to be and why there is such excitement about it. We then move on to installing, compiling, and managing your print network. Haven't you struggled to find the right directives for your printer? Enough of that search, this book will tell you where to find what. Not only that, but widely used directives and their uses are explained here along with directions to use them. There is more: you can learn how to manage the ever increasing print job load, set up your clients, and manage users. All this done, you will learn how to monitor, filter, and secure your CUPS server.

A practical tutorial to installing, managing, and securing this powerful printing system


This book takes a tutorial approach and each chapter contains step-wise instructions to perform specific tasks.

Who this book is for

This book is for Linux/Unix System Administrators interested in designing and setting up a CUPS network and provides enough knowledge to understand how the technology works, make decisions about deployment, and then implement a stable work environment. No knowledge in CUPS is required but readers need to be comfortable with working in the Linux/Unix environment. On the whole, readers should have basic knowledge of the Linux environment.

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software