CT320: Network and System Administration

Fall 2018


See this page as a slide show

CT320 Printing

Colorado State University

Computer Science Department

Original slides from Dr. James Walden at Northern Kentucky University.


  1. Printer Languages
  2. Printing Systems
  3. CUPS Printing
  4. Troubleshooting
  5. System V Printing
  6. BSD Printing
  7. Printer Practicalities

Printer Languages


PostScript is a Page Description Language (PDL) that was invented around the same time as the laser printer.


Portable Document Format (PDF) from Adobe systems was designed for the interchange of documents.


Printer Command Language (PCL) was invented by Hewlett-Packard for its laser and inkjet printers.


Extensible HyperText Markup Language (XHTML) is recommended by the World Wide Web consortium.

Printing Systems

CUPS Overview

CUPS Printing

CUPS Printing

CUPS Commands

    lpr -P laser01 myfile.ps
    lpq -P laser01
    lpstat -t
    lprm <id>

CUPS Web Interface

Multiple Printers

    export PRINTER=printer_name
  • Telling CUPS via a command
    lpotions -dprinter_name

Printer Instances

    lpoptions -p laser02/2up -o number-up=2

Network Printing

CUPS Protocol

CUPS Administration

CUPS Administration

CUPS Implementation

    # apt install cups

Remote CUPSing

$ cat /etc/cups/client.conf
servername parsons.cs.colostate.edu

CUPS Documentation



ProblemWhere to look
Name resolution, permissionsSystem log files on sending machine
PermissionsSystem log files on print server
Missing filters, unknown printers, missing dirs, etc.CUPS log files on sending machine
Messages about bad device names, bad formats, etc.CUPS log files on print server

System V Printing

accept/usr/sbinmake queue accept printing jobs
cancel/binremove print job from queue
disable/bindisable printing jobs from a queue
enable/binenable printing jobs from a queue
lp/binqueues jobs for printing
lpadmin/usr/sbinconfigure the printing system
lpmove/usr/sbinmove printing jobs between queues
lpsched/usr/libschedules and prints jobs
lpshut/usr/sbinstops printing services
lpstat/binreports status of printing services
reject/usr/sbinmake queue reject printing jobs

BSD Printing

lpc/usr/sbincontrols a printer or queue
lpd/usr/sbinschedules and prints jobs
lpq/usr/binshow print queue and status
lpr/usr/binqueues jobs for printing
lprm/usr/bincancels a queued print job
lptest/usr/binprints a test page

Printer Practicalities

Printer Practicalities (cont.)

Printer Practicalities (cont.)

Printer Practicalities (cont.)

User: Guest

Edit History Source

Modified: 2018-12-17T19:54

Apply to CSU | Contact CSU | Disclaimer | Equal Opportunity
Colorado State University, Fort Collins, CO 80523 USA
© 2018 Colorado State University
CS Building