How To:Installing Canon LBP2900 printer in Debian

Share your own howto's etc. Not for support questions!

How To:Installing Canon LBP2900 printer in Debian

Postby Lecram » 2020-12-12 11:56

I'm translating this from the original how to, which is in Russian.I've adapted this for my desktop. The current version of the canon capt driver is 2.71 that can be downloaded from the canon website.According to the original author,before installing the canon driver we have to enable the support for 32-bit if you are the using 64-bit Debian. The 64-bit driver needs the 32-bit driver installed for proper working otherwise it will only show printer is processing but it won't print. Run the following commands

1. Enable 32-bit.

Code: Select all
sudo dpkg --add-architecture i386
sudo apt update

2. Install CUPS

If you hadn't installed cups already install cups and also along with other printer drivers.

Code: Select all
sudo apt-get --no-install-recommends --no-install-suggests install cups  system-config-printer system-config-printer-udev printer-driver-gutenprint  foomatic-db-compressed-ppds

Enable cups by running this command

Code: Select all
sudo systemctl enable cups.service

3. Install the Drivers

When installing the 32 bit driver dpkg at first will not install as there will be missing 32-bit libraries

Code: Select all
sudo dpkg -i cndvcups-common_3.21-1_i386.deb
sudo apt install -f
sudo dpkg -i cndvcups-capt_2.71-1_i386.deb
sudo dpkg -i cndvcups-common_3.21-1_amd64.deb
sudo dpkg -i cndvcups-capt_2.71-1_amd64.deb

4. Edit the /etc/init.d/ccpd

After installing the drivers edit the edit the /etc/init.d/ccpd file with the following info below the

Code: Select all
# Provides:          ccpd
# Required-Start:    $local_fs $remote_fs $syslog $network $named
# Should-Start:      $ALL
# Required-Stop:     $syslog $remote_fs
# Default-Start:     3 5
# Default-Stop:      0 1 2 6
# Description:       Start Canon Printer Daemon for CUPS

run the following command

Code: Select all
sudo systemctl cups restart
sudo /etc/init.d/ccpd start

IMPORTANT: systemd maps the `/etc/init.d/ccpd` script that comes with the printer driver package to the name `cppd

5. Create a ccpd2 unit file

create a file called ccpd2.service in /etc/systemd/system with the following content

Code: Select all
Description=Printer daemon for Canon printers


# To run the daemon always when the system is up
# To run the daemon when a printer is attached

Now run

Code: Select all
sudo systemctl enable ccpd2.service
sudo systemctl restart cups.service

6. Register the printer in the system

Code: Select all
sudo lpadmin -p LBP2900  -m CNCUPSLBP2900CAPTK.ppd  -v ccp:localhost:59687  -E

7.Printer port definition

Code: Select all
sudo ls  /dev/usb/

8. Registering the printer in ccpd service

Code: Select all
sudo ccpdadmin   -p LBP2900 -o /dev/usb/lp0
sudo ccpdadmin

9. Restart Cups and ccpd service

Code: Select all
sudo systemctl restart cups.service
sudo systemctl restart ccpd2.service

10. setting our printer as default

Code: Select all
sudo lpadmin -d LBP2900

Resart your computer, make sure the printer is connected during boot so it can be recognized to avoid any hiccups. To check the status run the following command

Code: Select all
captstatusui -P LBP2900

It should show "Ready to Print" then it means you have correctly installed your printer. If the captstatusui reports a socket error then run the following commands

Code: Select all
sudo systemctl stop  cups.service
sudo systemctl start cups.service
sudo /etc/init.d/ccpd restart

1. [Original Author]
User avatar
Posts: 122
Joined: 2009-06-03 08:54

Return to Docs, Howtos, Tips & Tricks

Who is online

Users browsing this forum: No registered users and 5 guests