Rambler's Top100
Как сделать в Linux?
Настройка принтера Canon LBP2900 в Ubuntu
  Rambler's Top100

Установка проводилась на Ubuntu 9.10 64bit.

Для начала нужно настроить драйвера принтера. Те драйвера, которые лежат на официальном сайте Canon только для 32-битной архитектуры. Найти драйвера для 64-битной архитектуры можно, например, на forum.ubuntu.ru. Нужны пакеты

Однако при попытке установить cndrvcups-common_1.80-1_amd64.deb система ругается на то, что библиотека libcupsys2 не установлен.

Проблема в том, что эта библиотека перенесена в libcups2. Чтобы драйвера нормально установились придется вручную править зависимости пакетов. Для этого нужно открыть консоль, перейти в папку куда были скачаны драйвера принтера и набрать:

$ dpkg-deb -x cndrvcups-common_1.80-1_amd64.deb common
$ dpkg-deb --control cndrvcups-common_1.80-1_amd64.deb

После этого создадутся 2 папки: common и DEBIAN. Нужно исправить файл control в папке DEBIAN:
$ dpkg-deb -x cndrvcups-common_1.80-1_amd64.deb common
$ dpkg-deb --control cndrvcups-common_1.80-1_amd64.deb

$ cd DEBIAN
$ gedit control 

Нужно найти там строчку
Depends: libc6 (>= 2.3.4-1), libcupsys2 (>= 1.2.1), libpopt0 (>= 1.7) 

Поменять libcupsys2 на libcups2 и сохранить файл. После этого нужно скопировать всю папку DEBIAN в папку common и выполнить команду
dpkg -b common cndrvcups-common_1.80-1_amd64.deb

После этого можно запускать получившийся файл cndrvcups-common_1.80-1_amd64.deb, а после него cndrvcups-capt_1.80-1_amd64.deb.

Скачать драйвера с исправленными зависимостями можно здесь:

После установки драйверов, открываем консоль и выполняем поочереди команды:
sudo /etc/init.d/cups restart

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

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

Последняя команда должна вывести следующее:
 CUPS_ConfigPath = /etc/cups/
 LOG Path        = None
 UI Port         = 59787

 Entry Num  : Spooler	: Backend	: FIFO path		: Device Path 	: Status 
 ----------------------------------------------------------------------------
     [0]    : LBP2900 	: ccp 		: /var/ccpd/fifo0 	: /dev/usb/lp0 : New

После этого запускаем ccpd и добавляем его в автозагрузку:
/etc/init.d/ccpd start
sudo update-rc.d ccpd defaults 20

Правим файл /etc/ccpd.conf Находим там такие строки
#<Printer  LBP3200>
#DevicePath  /dev/usb/lp0
#</Printer>

Раскомментируем их и изменяем название принтера на LBP2900, сохраняем файл, перезапускаем ccpd
/etc/init.d/ccpd restart

После этого запускаем монитор принтера и проверяем, что принтер работает:
captstatusui -P LBP2900

Он должен показать сообщение "Ready to print". К сожалению, если запускать компьютер с выключенным принтером, то приходится перезапускать ccpd.
Как сделать?