CUPS printing of pdf files

How can I tell the lpr command (cups) that my file is actually a pdf? lpr file.pdf won't print anything.

asked Dec 24, 2011 at 20:44 vonPetrushev vonPetrushev 803 2 2 gold badges 11 11 silver badges 12 12 bronze badges

Can you post any error messages from cups? Printing a file with lpr should create a print job. You can check the status of that (including error messages) in cups' web interface.

Commented Dec 24, 2011 at 20:52

This should work automatically. What is your printer and printer driver? Go and look at localhost:631 as Wieland suggests. There are also logs at /var/log/cups . See for example if there are errors in error_log .

Commented Dec 24, 2011 at 22:49

3 Answers 3

There are at least two ways to convert and print a PDF file .

The first way is to view the file in xpdf (the PDF file viewer), and then left-click the printer icon. This won't actually send the file to the printer, but it writes a PostScript file in the same directory, with the same base file name as the PDF file but with a .ps extension. You can then print this file with lpr or convert it to another format.

The second way is to use pdf2ps, part of the gs package, to convert the PDF file to PostScript (then print the PostScript output as described for xpdf above). pdf2ps takes two arguments: the name of the PDF file to convert, and the name of the PostScript file to write to.

To convert the PDF file `pricelist.pdf', type:

$ pdf2ps pricelist.pdf pricelist.ps 

This command writes a PostScript file pricelist.ps in the current directory.