How to Print or Make PDF Files in Ubuntu/Linux

No paper needed if you have PDF!

Ever wonder how to create PDF files from your documents or the web pages you visit?

It's very easy if you use Ubuntu!

Considering the success of my previous post about wireless-ing your ADSL internet connection, I guess it's good to show you how to make PDF files easily with Ubuntu.

In short, go to your Ubuntu terminal then execute:

sudo aptitude install cups-pdf
sudo aa-complain cupsd

Then you can go to System menu, Administration, Printing and add a New Printer, pick the PDF driver. And you're set!

Linux Printing PDF

You can print a test page or anything using your newly installed PDF printer. Your PDF files will be saved in the PDF folder inside your home folder (so it will be named with something like /home/salsabeela/PDF/somefile.pdf).

The sudo aa-complain cupsd command is very important: it avoids AppArmor restrictions for cupsd / cupsys (the printer server application in Linux). I recently stumbled across this problem myself, because my Ubuntu Gutsy laptop can create PDF files, but my Ubuntu desktop computer can't. Example error messages that you may get (see your /var/log/cups/error_log and/or /var/log/cups/cups-pdf_log):

E [28/Jan/2008:22:17:32 +0700] cupsdAuthorize: Local authentication certificate not found!
Mon Jan 28 20:56:17 2008 [ERROR] failed to create directory (/home/ceefour/PDF)
Mon Jan 28 20:56:17 2008 [ERROR] failed to create user output directory (/home/ceefour/PDF)
Mon Jan 28 20:58:21 2008 [ERROR] failed to set file mode for PDF file (non fatal) (/home/ceefour/PDF/PPR_Test_Page.pdf)

Weird, but the quick solution is what I've described above.

PS: ...which makes me wanna create a socially networked HowTo site. ;-)

Category: 

Comments

Thanks for the 'aa-complain cupsd' clue. A cupsys update in early January on my laptop running gutsy 7.10, caused the CUPS/PDF to no longer print .pdf's to my ~/PDF directory or anywhere else for that matter? A search using google/linux for the 'Local authentication...' error tonight got me to your site and the fix.

Thanks again!