Depending on the kind of printer you have purchased, it is possible to get a printer that is Linux ready from the box and will thus just fit in with your Operating system.

On the other hand it is also possible to get a printer which is not supported out of the box. In most instances, all you need is to install a driver for such a printer and voila! You are ready to print.

Because there are very many versions of Linux out there, covering all the printer configuration systems can be problematic.

To overcome this, there is a set up tool aptly called CUPS (Common UNIX Printer Service) that offers web-based, universal services found on all distributions that use CUPS for printing purposes.

What exactly is CUPS?

CUPS is basically a modular printer system which acts like a server printer for operating systems that are UNIX like. It can do this for both networked machines and stand-alone computers. CUPS consists of the following three (3) key systems:

Print Scheduler/Spooler which lines up printing jobs for the printer;

A Filter System which does the data conversion for the printer to format and understand the data being printed;

A back-end system that transports the data from the filters to the printer.

When CUPS is installed in the system it installs the following directories by default:

/var/spool/cups-pdf; this is the spooler directory where all the PDF files generated by CUPS are held for printing.

/var/spool/cups; this is another spooler directory where general print jobs are held before being printed.

/etc/cups; this is the configuration directory

In addition to the above, CUPS does also install it’s service in either of these two locations; /etc/rc.d/init.d OR /etc/init.d/ .

Depending on the location or distribution used, you will type in the following command to start the service (Debian example):

/etc/init.d/cups start

To stop the binary you type the following:

/etc/init.d/cups stop

To restart the binary you type the following:

/etc/init.d/cups restart

Remember to change the location according to how the binary is saved in your machine.

How to Configure Your Printer

image credit: ESP

This configuration is done using an integrated CUPS web based tool and the walk-through is for setting up a remote printer. This is because the process for a remote printer is slightly more complicated and will thus offer a good opportunity to learn the installation and set up procedures. Also, for those not so adventurous, you can always hire a print management professional/company to do it for you if you’re in corporate environment.

The main intention of going through the set up process is to allow UNIX to create what is known as a Postscript Printer Description (ppd) file.

This file usually contains all the features of the printer in question and the Postscript code that will be used to invoke the necessary features for print jobs of that particular printer

To configure the printer using the above mentioned web based CUPS tool, you must open your web browser and go the main page of the CUPS tool at http://localhost:631

From here one should follow these steps to set up the printer:

Step 1 – Click The “Add Printer” Button

This button is on the main page. In addition to this button, there is another one named “Manage Printers“ button; this one comes in handy if you have more than one printer, it allows you to manage all the printers which have already been installed.

Step 2 – Key In The Name, Location And Description Of The Printer You Are Setting Up

There are certain conditions you must fulfill in this page. When you are typing in the name of the printer, make sure it does not include a SPACE, “#” (hash tag) or “/” (backslash). So the name should appear as one continuous word.

The location should just state where the printer is located such as Lab 2 or Lab 4. You can use any human readable characters.

The description should be a human readable description of your printer such as HP Laser jet 6781 and can include spaces.

Once you have filled in the three input boxes you should click “continue“.

Step 3 – Select The Device From The List

At this step, you are expected to select the URI of your device. In most instances it is either remote or local. If you have are installing a local printer it will be listed in the drop down box and so all you need to do is just to select it.

If the printer is remote, select the Internet Printing Protocol as the URI of the device.

Click the “continue“ button to go to the next step.

Step 4 – Enter The URI Which Will Instruct All The Back-ends To The Exact Place Where The Printer Is Located

Because as earlier stated we are configuring a remote printer, you must enter the address of the printer. The address can take various formats which have been displayed in the in the window.

So if for the purpose of this walkthrough the printer is located in the /printers/Spool and is aptly called LaserJet then we will type in something like this; ipp:// 192.160.0.000/printers/LaserJet. It will be following this format (ipp: // hostname/ipp/).

If you are connecting to a printer server, you will have to know this information beforehand. Make sure you include the ipp:// section as failure to do so will make it impossible to connect your machine and the remote printer.

Step 5 and 6 – Select The Printer’s Manufacturer And Model

When selecting your model, make sure you get the correct one as there may be different models for different languages. If you don’t find your model then you will have to install a driver for it.

You can use Google or any other search engine to help you get a compatible or proprietary driver that’s suitable. To install the driver you have found just go back to synaptic, search for the name of the driver package and then install the application.

Once you are through, click the “Add printer button“ to add your configured printer. In most instances you will be required to key in your username and password before the installation is effected or completed.

Step 7 – Configure Any General Settings For The Printer

After your authentication has succeeded a new page will appear. This page allows you to make any other additional or specific needs you may have for your computer such as what to do when the printer jams, the kind of error or operation policy you want the printer to apply and the power save period amongst other things.

Once you are through with all the above, you are ready to print from a remote printer.