How to install Canon LBP2900 printer in ubuntu 12.10

Solution 1:

First download the Linux_CAPT_PrinterDriver_V240_uk_EN.tar.gz

  • Unzip, navigate in the folder, and install according to your needs

1) Create the following directories/file if they are missing:

sudo mkdir /var/ccpd

sudo mkfifo /var/ccpd/fifo0

sudo mkdir /var/captmon

2) Register the printer:

sudo /usr/sbin/lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E

3) Register the printer with ccpd daemon:

sudo /usr/sbin/ccpdadmin -p LBP2900 -o /dev/usb/lp0

4) Start ccpd daemon:

sudo /etc/init.d/ccpd start

Solution 2:

I have found the install procedure for canon LBP2900 64 bit Arch and which works on :

  • Linux Mint 17.1 Ubuntu 14.04 and 15.04 LMDE 2 (Betsy)

Power On Printer after login check ls -l /dev/usb/ should return lp0

install packages downloaded from canon site

cndrvcups-common_2.60-1_amd64.deb 
cndrvcups-capt_2.60-1_amd64

Install following

sudo apt-get install portreserve, gsfonts, gsfonts-other, gsfonts-x11 
sudo apt-get install libc6:i386 libpopt0:i386 libglade2-0:i386

libglade2-0:i386 may not be required for linux mint 17.1 cinnamon but required for Ubuntu 14.04, 15.04 and LMDE 2

sudo service cups restart
sudo /usr/sbin/lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp://localhost:59687 -E
sudo /usr/sbin/ccpdadmin -p LBP2900 -o /dev/usb/lp0
sudo service ccpd restart
ensure that there are two processes by checking
sudo service ccpd 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.

Switch off the printer and switch on. Another printer LBP2900-2 may install disable it in printers app.

To ensure that printer is available after reboot edit /etc/rc.local and add

service cups restart 
service ccpd restart 

in that order as cups has to start before ccpd

You do not need to change the port no to 59787 as is indicated in some forums or even the device to /dev/lp0 in the ccpd.conf file both of these not required.

To use LSB scripts instead of changing rc.local

Add the below to /etc/init.d/ccpd for LSB headers for restart of ccpd at boot. So no entry required in rc.local. This may or may not work if it doesnt go back to rc.local entries.

### BEGIN INIT INFO 
 # 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 
 ### END INIT INFO

Hope this solves the problem Anil Gadgil