Установка драйвера Canon LBP 2900 на Ubuntu

Для настройки принтера LBP2900 в Ubuntu, нужно настроить драйвер CAPT.

CAPT расшифровывается как Canon Advanced Printing Technology. Это технология печати, разработанная компанией Canon, для управления лазерными принтерами.

CAPT-драйверы обрабатывают задания на печать прямо на компьютере, уменьшая нагрузку на встроенный контроллер принтера. В отличие от стандартных PCL (Printer Command Language) или PostScript-драйверов, CAPT передает данные в более сжатом и оптимизированном формате. Это позволяет снизить требования к ресурсам принтера и повысить скорость обработки заданий.

ccpd (Canon Printer Daemon) — служба, которая отправляет данные печати на принтер.

CUPS - это открытая система печати для UNIX-подобных операционных систем.

Чтобы работал принтер, нужно установить CUPS и драйвер CAPT. CUPS будет передавать данные службе ccpd, а эта служба отправлять уже команды на принтер для печати документа.

Установка драйвера принтера

Список поддерживаемых устройств

LBP1120 LBP1210 LBP2900 LBP3000 LBP3050 LBP3100 LBP3150
LBP3200 LBP3210 LBP3250 LBP3300 LBP3500 LBP3600 LBP5000
LBP5050 LBP5100 LBP5300 LBP6018 LBP6020 LBP6200 LBP6300
LBP6310 LBP6340 LBP7010 LBP7018 LBP7200 LBP7210 LBP9100

Подключите 32 битные библиотеки

dpkg --add-architecture i386
apt-get update
apt-get install libatk1.0-0:i386 libcairo2:i386 libglib2.0-0:i386 libgtk2.0-0:i386 libc6:i386 libstdc++6:i386 libpopt0:i386 libxml2:i386

Скачайте драйвера https://sg.canon/en/support/0100459601

Должен скачаться файл:

2421628aac9c6000d08c46a1204f08be *linux-capt-drv-v271-uken.tar.gz

Нужно его разархивировать и перейти в папку linux-capt-drv-v271-uken/64-bit_Driver/Debian

13404206c040c06f984d1121532df6df *cndrvcups-capt_2.71-1_amd64.deb
e9101e646f94ee8b2c8b79ef05176cb6 *cndrvcups-common_3.21-1_amd64.deb

Установите deb пакеты

dpkg -i cndrvcups-capt_2.71-1_amd64.deb cndrvcups-common_3.21-1_amd64.deb

Удалите файл

rm -f /etc/init.d/ccpd

Создайте файл

nano /etc/systemd/system/ccpd.service

[Unit]
Description=Printer daemon for Canon printers
Requires=cups.service
After=cups.service

[Service]
ExecStart=/usr/sbin/ccpd
Type=forking

[Install]
# To run the daemon when a printer is attached
WantedBy=printer.target

Запустите сервис

systemctl enable ccpd.service
systemctl start ccpd.service

Настройка CUPS

Установите CUPS

apt-get install cups system-config-printer

Удалите автообноружение принтера

apt-get purge system-config-printer-udev

Добавьте пользователя в список админов управления принтерами

usermod -a -G lpadmin user

Добавьте принтер

Проверьте подключен ли принтер

ls /dev/usb/

Выполните команду

/usr/sbin/lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp://localhost:59687 -E
/usr/sbin/ccpdadmin -p LBP2900 -o /dev/usb/lp0

Установите принтер по умолчанию

lpadmin -d LBP2900

Перезапустите службы

systemctl restart cups.service
systemctl restart ccpd.service

Проверка печати

Проверьте настройки принтера

/usr/sbin/ccpdadmin

Создайте на рабочем столе файл

nano `xdg-user-dir DESKTOP`/printer.desktop

Текст

[Desktop Entry]
Name=Printer status
GenericName=Printer status
Comment=
Exec=captstatusui -P LBP2900 
Type=Application
Icon=printer
Terminal=false

Запустите ярлык на рабочем столе. Должно появится окно и там должно быть сообщение "Ready to Print". Это означает, что принтер настроен корректно. Попробуйте на нем распечатать документ

Если принтер включен, но пишет ошибку Communication Error, перезапустите службы

systemctl restart cups.service
systemctl restart ccpd.service

Материалы

  1. Драйвер на официальном сайте
  2. [Инструкция] How To Installing Canon LBP2900 printer in Debian
  3. [Форум] Подключение принтеров Canon LBP, работающих с драйвером CAPT
  4. [Форум] Разработка драйвера для Canon с нуля
  5. [Форум] Canon LBP3010
  6. Более старые версии CanonCaptDrv190
  7. Скрипт установки на гитхаб
  8. Инструкция на французском языке
  9. Инструкция на сайте Ubuntu