How do I install the driver for Canon LBP 2900 printer in Ubuntu 14.04?

I have tried installing drivers from the official CANON support and checked other answers on Ask Ubuntu but so far no results.


3 Answers 3


This worked for me in Linux Mint 17 32-bit (which is more or less Ubuntu 14.04 32-bit).

  1. Download and install the drivers.

    Go to the Canon Asia website (or any other Canon website) and download the CAPT Printer Driver for Linux Version 2.60 from this link.

    Extract it to get a folder containing directory 32-bit_Driver/Debian, enter inside.

    Install the .deb file cndrvcups-common_2.60-1_i386.deb from the terminal:

    sudo dpkg -i cndrvcups-common_2.60-1_i386.deb

    You may also install it using gdebi package installer.

    Next install cndrvcups-capt_2.60-1_i386.deb

    sudo dpkg -i cndrvcups-capt_2.60-1_i386.deb
  2. Install other postscript fonts and program to reserve ports for the printer.

    Install portreserve, gsfonts, gsfonts-other, gsfonts-X11 via Synaptic Package Manager.

  3. Restart the printer.

    service cups restart
  4. Add printer and start the Canon Printer daemon.

    sudo /usr/sbin/lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp://localhost:59787 -E  
    sudo /usr/sbin/ccpdadmin -p LBP2900 -o /dev/usb/lp0
    sudo service ccpd start
    sudo service ccpd status
  5. Check the printer status.

    captstatusui -P LBP2900

    If you are seeing the message Ready to print, you are done! Else you may have to restart the system, and repeat all the steps from step 4.

    It may cease to work after restarting the system. Run sudo service ccpd restart and try again.

  • I did exactly that and failed. Ubuntu 14.04, 64bits.
    – Hugolpz
    Jan 3, 2015 at 1:34
  • 1
    Note that I tried this on Ubuntu 20.04. It worked only after changing -m CNCUPSLBP2900CAPTK.ppd to -P /usr/share/cups/model/CNCUPSLBP2900CAPTK.ppd (full path, as indicated in the instructions from Canon) in the lpadmin command. Do also notice that the printer might not be registered as lp0, especially if you're adding/removing the printer for testing, so check the number by using ls /dev/usb/lp*.
    – poomerang
    Nov 11, 2020 at 13:29

Below is my working solution, adaptable for other LBP models & PC bitwidths.


In the case of Ubuntu 64-bit, printer Canon LBP2900:

git clone https://github.com/hugolpz/Canon_printer.git
cd ./Canon_printer
make -f ./download.mk
sudo make -f ./install.mk BITS=64 PRINTER=LBP2900
sudo make -f ./OS_restart.mk
sudo make -f ./install.mk BITS=64 PRINTER=LBP2900

Adapt to your bitwidth.

OS restart

If printer is not working after install & OS restart :

sudo pkill -9 -x ccpd
sudo /etc/init.d/ccpd start   # Output should have 2 numbers of 4 digits !
> Canon Printer Daemon for CUPS: ccpd: 2626 2615    # seems good :)

For more instructions, see https://github.com/hugolpz/Canon_printer


Buy a non-Canon Linux compatible printer.

  • 1
    When run sudo make -f ./install.mk BITS=64 PRINTER=LBP2900 : gzip: drivers.tar.gz: not in gzip format tar: This does not look like a tar archive tar: Exiting with failure status due to previous errors install.mk:36: recipe for target 'unzip' failed make: *** [unzip] Error 2
    – quangkid
    Aug 31, 2018 at 3:22

This is the latest driver from canon. Its version 2.60, and you can download it here.

Once extracted it will have both the 32bit drivers, and the 64bit drivers.

This software is a CAPT printer driver that provides printing functions for Canon LBP printers operating under the CUPS (Common UNIX Printing System) environment, a printing system that operates on Linux operating systems.

  • I already did that, i know that in previous version there is some steps to restart cups etc via terminal, do you know the full guide for installing ?
    – user275919
    Apr 29, 2014 at 16:22
  • To restart CUPS from terminal you would sudo /etc/init.d/cupsys restart
    – Mitch
    Apr 29, 2014 at 16:27
  • I need answer for askubuntu.com/q/519521/155039
    – Faisal
    Sep 8, 2014 at 17:37

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