My users want to use an iPad to print to our network printers. The printers are shared using a Windows 2008 R2 Server. I've looked into getting AirPrint to work but haven't had any success.

I would consider a Mac OS X VM or maybe a mac mini on the network.

  • Just one hint: You can run an OS X VM legally only on a Mac with MacOS, so this isn't an option. – Sven Sep 8 '11 at 21:17
  • @SvenW ESXi 5 can run OS X VMs, but still only allowed on Apple hardware. – Shane Madden Sep 8 '11 at 21:20
  • yeah...I'm thinking the $999 mac mini with lion server would be a nice legal fit. I'm still a bit confused about the implementation and how to get it to work with windows. – SLY Sep 8 '11 at 21:23
  • 1
    This description seems to cover how to set it up on Linux. That may be cheaper then buying Apple hardware. You can easily run linux in a VM. finnie.org/2010/11/13/airprint-and-linux – Zoredache Sep 8 '11 at 21:27
  • @Shane Madden: Does ESXi run on Apple hardware? Especially on the XServe? – Sven Sep 8 '11 at 21:40

There are AirPrint home-made daemons you can use (same as there are home-made AirPlay daemons as well), but I think you'll have trouble getting a sysadmin agreeing to install and support them on your print servers.

These solutions all involve installing iTunes and then using its Bonjour service to share the printer. I haven't actually had success on getting it to work (at home, not at work), but others have.

| improve this answer | |

OK. I was successfully able to use AirPrint on my corporate network (I am the sysadmin). I was unable to print to severs shared using SMB Shares. I was only able to successully print to printers with print servers built into them, using their IP Address on port 9100.

1) Install a VM with Ubuntu 11.11 beta Oneiric Ocelot. Update your packages.

sudo apt-get update
sudo apt-get upgrade

2) Add the printer using these instructions

  1. On your computer start system-config-printer via System -> Administration -> Printing (GNOME Classic) or via Turn-off-button at the upper right -> System Settings -> Hardware -> Printing (Unity Natty) or via the command line (all systems including Unity Oneiric).

  2. In system-config-printer choose Server -> Settings and activate "Published shared printers connected to this system". Click OK and then right-click on the icon of your print queue and choose Properties in the pop-up menu. In the Policies section of the dialog make sure that "Shared" is activated.


3) Get the AirPrint Generate script from github here. (More info)


This will generate PRINTER.servicefiles.

cp PRINTER.service /etc/avahi/services/

4) edit /etc/cups/cups.conf add a line

ServerAlias * under the line Port 631

5) Restart avahi and cups

NOTE: To debug use avahi-browse.

avahi-browse --terminate --resolve _ipp._tcp






| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.