О настройке принтера Canon LBP2900 в Debian 7

Автор Leo, 14 мая 2012, 03:00:37

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

Leo

Настройка Canon LBP2900 в Debian.
Этот пост - вольный перевод статьи опубликованной здесь, адаптированный под Debian (Ещё одна хорошая статья есть тут).

1. Выключим принтер.
Откроем терминал и выполним

su

2. Проверим наличие Ghostscript и OpenPrinting Driver Interface

gs -h | grep opvp

она должна вывести что-то вроде

lj5mono ljet2p ljet3 ljet3d ljet4 ljet4d ljetplus nullpage opvp oprp pbm

если строка не содержит выделенных позиций значит OpenPrinting Driver Interface не установлен и нужно установить его.

3. Далее необходимо получить архив с драйверами, распаковать его. В папке /Linux_CAPT_PrinterDriver_V260_uk_EN/32-bit_Driver/Debian/ находятся два пакета с драйверами принтера.
В терминале перейдём в папку с драйверами и выполним команду

dpkg -i *.deb

4. Включим принтер.

5. Перезагрузим CUPS

/etc/init.d/cups restart

6. Зарегистрируем Canon LBP2900 в диспетчере очереди печати

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

Общий синтаксис команды (если другая модель принтера)
/usr/sbin/lpadmin -p [printer name] -m [PPD file name] -v ccp:/var/ccpd/fifo0 -E
[свернуть]

7. Выясним куда подключился принтер lp0 или lp1

ls /dev/usb/

8. Путь к принтеру мы посмотрели предыдущей командой
Зарегистрируем принтер в ccpd-Daemon-Setupfile

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

Общий синтаксис команды (если другая модель принтера)
/usr/sbin/ccpdadmin -p [Printer Name] -o [Printer Device Path]
[свернуть]

9. Запустим ccpd

/etc/init.d/ccpd start

10. Проверим состояние принтера

captstatusui -P LBP2900

11. Если в появившемся окне монитора видим Ready to print значит можно печатать.

12. Добавляем драйвер в автозапуск

update-rc.d ccpd defaults 20;

Открываем /etc/rc.local

nano /etc/rc.local

Дописываем перед exit 0 следующую строку

/etc/init.d/ccpd restart

Сохраняем, закрываем, перезагружаем, проверяем.

Leo

#1
Замечено следующее: если установка принтера проводилась сначала с помощью одного аппарата (принтера), а потом был подключен другой, точно такой же, то есть вероятность появления ошибки, которая фигурирует в мониторе принтера (captstatusui -P LBP2900) как Communication error. При этом все провода и питание в порядке. Причина всё в той же точке подключения - /dev/usb/lp0 или /dev/usb/lp1... проверьте - один принтер может быть подключен в lp0, но если его заменить на другой - то второй может быть lp1... после повторного выполнения команды /usr/sbin/ccpdadmin -p LBP2900 -o /dev/usb/lpХ где Х - нужный символ... принтер начинает работать.
И ещё... Canon LBP2900 не имеет драйвера под 64bit архитектуру... хотя в архиве с драйвером есть rpm-пакет под эту архитектуру, генерированный из него deb-пакет (с использованием утилиты alien) нормально не функционирует. Более углубленно не разбирался. Если вариант всё-же есть - будет интересно выслушать.

ferum

Цитата: Leo от 08 июля 2013, 00:27:44Успешно прикрутил свой старенький Canon LBP 2900 к Debian 7
Успешно прикрутил свой старенький Canon LBP 3000 к Debian 7 AMD64 что несколько геморойней. Принтер можно сказать один в один а вот 64 бита гемор. Тем не менее за основу взял http://forum.ubuntu.ru/index.php?topic=189049.0 подробности https://debianforum.ru/index.php?topic=1461.30
Ранее прикручивал к 32 битным системам практически вашим способом и для успешной печати всё время перед включением принтера приходилось рестартовать ccpd . Теперь просто включаешь принтер, отправляешь задание , он пару секунд думает а потом успешно печатает, всегда.
Русские дебианщики против цифрового слабоумия !

sx88

Подскажите с написанием скрипта/кнопки_запуска.
Принтер периодически подвисает, приходится перезапускать сервис ccpd + иногда приходится еще и перерегистрацию принтера делать. Посему хочу все в одну кнопочку запуска уложить

sudo kill -9 ccpd ;
/usr/sbin/lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E ;
/etc/init.d/ccpd start     

Leo

Часто бывает так что границы присланного документа выходят за границы печати, и тогда не надо ничего перезапускать - достаточно открыть монитор принтера командой

captstatusui -P LBP2900

и в меню выбрать

Job -> Resume job

после чего принтер продолжит печатать в штатном режиме

sx88

Цитата: Leo от 04 ноября 2013, 12:04:44captstatusui -P LBP2900
Гуи капстатуса вообще не запускается. Если запускать через терминал появляется ошибка "капстатус еррор. Сокет еррор".

ferum

Всё зависит от полноты налитого стакана используемого окружения рабочего стола
Русские дебианщики против цифрового слабоумия !

sx88

Цитата: ferum от 05 ноября 2013, 13:30:40Всё зависит от полноты налитого стакана используемого рабочего стола
Нет, нет. Вы меня не поняли. Все работает нормально, но периодически из за бурь_на_Марсе/свержения_монарха_в_Африке/по_неизвестным_причинам принтер перестает печатать, капстатус выдает ошибку сокета и не запускается и т.д. Вот прошу помощи в  написании кнопки запуска, чтобы пользователь на нее щелкнул и выполнился скрипт. WM -- LXDE
Открыть содержимое (спойлер)
sudo kill -9 ccpd ;
/usr/sbin/lpadmin -p LBP2900 -m CNCUPSLBP2900CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E ;
/etc/init.d/ccpd start   
[свернуть]

ferum

sx88, чуть выше ссылка на бунтовский мануал. разница в том , что по нему демоном запуска принтера рулит udev  и рулит без заморочек, единственное правило для себя: загрузилась система, включил принтер....при необходимости но не наоборот.
Русские дебианщики против цифрового слабоумия !

Leo

#9
sx88, я поправил этот пост - установил, настроил по нему два принтера Canon LBP2900, плюс расшарил их - работают. Драйвер нормально запускается при старте компьютера, принтер можно отключить, включить, вытащить и воткнуть обратно usb-кабель, после этого принтер всё равно печатает.
На борту Debian7+XFCE.

Сообщение объединено: 06 ноября 2013, 08:53:00

и да - принтер всегда включен...  :) (не нужно выключать перед загрузкой ОС)

ferum

Вообще эти принтеры очень странные для linux или просто до сих пор не существует единого надёжного решения для них. В убунтах 3000 у меня работал всегда, но с переменным успехом. На одних релизах хорошо, с другими были проблемы. На Squeeze он меня просто достал, нельзя было печатать пока не перезапустишь сервис ccpd, а иногда просто отваливался без видимых причин, помогала только полная переустановка и то бывало что не с первого раза. В wheezy пока печатает, проблем не наблюдал...но не сглазить бы. Единственный случай удививший меня был с забавным дистрибутивом PClinuxOS, принтер завёлся с полоборота и работал исключительно, пауза для прохождения задания была меньше чем в винде. Печать и мнгновенно процесс пошёл. В debian пауза составляет пару секунд, некритично но заметно.
Русские дебианщики против цифрового слабоумия !

Leo

Более того - сейчас настроил печать из Windows на принтер Canon LBP2900, подключенный к Debian7 - делал как описано здесь, за исключением того что драйвер поставил родной. С драйвером Generic - MS Publisher Imagesetter этот принтер не работает.

ferum

Очень интересно, а подробнее:
1) http://10.1.1.49:631/printers/scx4200 - с IP понятно , а scx4200 меняем на ?
2)что в firewall-е на linux-машинке открыт TCP-порт 631 для windows-клиента. можно подробнее чтоб не гуглить ?
3) Надо ставить на винду драйвера для canon ?
Русские дебианщики против цифрового слабоумия !

Leo

Цитата: ferum от 06 ноября 2013, 10:52:11
1) http://10.1.1.49:631/printers/scx4200 - с IP понятно , а scx4200 меняем на ?
на LBP2900, это можно посмотреть на странице http://localhost:631/printers/ вашего компьютера к которому подключен принтер

Цитата: ferum от 06 ноября 2013, 10:52:11
2)что в firewall-е на linux-машинке открыт TCP-порт 631 для windows-клиента. можно подробнее чтоб не гуглить ?
если вы не закрывали этот порт то он открыт... если закрывали то сами знаете как открыть.

Цитата: ferum от 06 ноября 2013, 10:52:11
3) Надо ставить на винду драйвера для canon ?
да надо, можно с офсайта качнуть там прям в инсталяторе можно прописать параметры сетевого подключения, тогда стандартной процедурой можно будет не добавлять.

ferum

Опробовал этот способ на debian squeeze и на windows xp обе системы стоят на одной сетевой машине. На debian из трудностей только то что система видит почемуто как бы 2 одинаковых принтера (один ...@192.168...) он то и оказался нужным. Для винды пришлось прописывать принтер ручками (сама не видит)...надо было ещё  сообразить как он правильно называется., драйвер установил с диска.
Русские дебианщики против цифрового слабоумия !