Эпопея продолжается. Устанавливал Canon 1120 в Ubuntu 11.10 (64 bit):
Вначале удалил старые дрова версии 2.40, на которых принтер не завелся:
sudo /usr/sbin/ccpdadmin -x LBP1120
sudo /usr/sbin/lpadmin -x LBP1120
sudo dpkg -p cndrvcups-capt cndrvcups-common
Потом скачал дрова версии 1.8, разобрал пакет cndrvcups-common_1.80-1_amd64.deb, исправил зависимости (libcupsys->libcups2), установил пакет fake-gs-esp_1.0_all.deb, призванный заменить устаревший пакет gs-esp (точнее, обмануть систему и заставить использовать вместо него пакет ghostscript, что необходимо для корректной поддержки принтером PostScript'а), затем собрал пакет обратно и поставил новые дрова:
sudo dpkg -i cndrvcups-common_1.80-1_amd64.deb cndrvcups-capt_1.80-1_amd64.deb
Затем проверил наличие папок, все они уже были на моей машине:
sudo mkdir /var/ccpd
sudo mkdir /var/captmon
sudo mkfifo /var/ccpd/fifo0
Сделал fifo общедоступным:
sudo chmod 777 /var/ccpd/fifo0
Перезапустил сервисы:
sudo service cups restart
sudo service ccpd restart
Зарегестрировал принтер в системе:
sudo /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E
sudo /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0
После второй команды получил вот такой вывод в терминале:
CUPS_ConfigPath = /etc/cups/
LOG Path = None
UI Port = 59787
Entry Num : Spooler : Backend : FIFO path : Device Path : Status
----------------------------------------------------------------------------
- : LBP2900 : ccp : /var/ccpd/fifo0 : /dev/usb/lp0 : New
Сделал принтер общедоступным:
sudo modprobe usblp
sudo chmod 777 /dev/usb/lp0
Получилось?
ls -l /dev/usb/lp0
вывод в терминале:
crw-rw---- 1 root lp 180, 0 2012-03-08 22:39 /dev/usb/lp0
Добавил в sudo nano /etc/modules строчку usblp и выполнил sudo update-rc.d ccpd defaults 50
Перезапустил сервисы еще раз:
sudo service cups restart
sudo service ccpd restart
Проверяем результат:
captstatusui -P LBP1120
и видим: Ready To Print. Тестовая страница печатается. Ура!
но...
После перезагрузки приходится каждый раз выполнять скрипт, чтобы принтер завелся и печатал:
#!/bin/bash
sudo service cups stop
sudo service ccpd stop
sudo chmod 777 /dev/usb/lp0
sudo chmod 777 /var/ccpd/fifo0
sudo service cups start
sudo service ccpd start
Можно ли какт-то автоматизировать сей процесс, чтобы принтер работал корректно?
Заранее спасибо всем откликнувшимся.