Linux – How to print from iPad to CUPS

avahicupslinuxprinting

I would like to print from an iPad2 to the office printer running on CUPS. After following a couple of cookbook style cheat sheets, printing from the iPad still does not work. the iPad sees the printer entry I made and offers it as an option, but nothing appears on the queue and there is no printer output. Local print jobs on the server work, so CUPS recognizes and works with the printer. Avahi-discover lists the printer and will dump the associated XML file. The server is Ubuntu 10.10.

The procedure used is outlined here.

This page had a simpler recipe.

Any tips appreciated.

Edit:

Today, I disabled the firewall on the server. Now this message shows up in the CUPS error_log repeatedly when trying to print:

E [13/Jul/2011:10:17:15 -0400] Request from "192.168.x.y" using invalid Host: field "server.local"

The name of the server is server.local, which can be reached using that name. The address "192.168.x.y" is that of the iPad.

Best Answer

(Posting an answer that was edited into the question)

This is a bug in CUPS. The bug report lists several workarounds:

  • Add ServerAlias * to cupsd.conf
  • Add ServerAlias servername to cupsd.conf
  • Add HostNameLookups On to cupsd.conf
Related Question