Установка CAPT принтеров Canon LaserShot на примере LBP-1120

Материал из FedoraMD.org Wiki
Перейти к навигации Перейти к поиску

ВНИМАНИЕ: команды предваряемые символом '#' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду $ su - для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя.


Страница загрузки

Подготовка

Закачиваем драйвер с сайта Canon. Архив CAPTDRV180.tar.gz содержит два RPM пакета. Распаковываем его:

$ tar xf CAPTDRV180.tar.gz

убеждаемся что подсистема печати CUPS установлена:

# yum install cups

Установка

Устанавливаем capt драйвер и перезагружаем сервис cups:

# cd CANON_UK/Driver/RPM/
# yum localinstall --nogpgcheck cndrvcups-capt-1.80-1.i386.rpm  cndrvcups-common-1.80-1.i386.rpm
# service cups restart

Регистрируем принтер принтер под именем LBP1120 используя файл описания соответствующий нашей модели принтера - CNCUPSLBP1120CAPTK.ppd:

# /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E

Другие файлы описания находим здесь:

# ls /usr/share/cups/model/

Создаем FIFO каналы необходимые для связи демона ccpd и cups (не требуется для драйвера 1.80 и новее):

# mkdir /var/ccpd
# mkfifo -m 666 /var/ccpd/fifo0
# mkfifo -m 666 /var/ccpd/fifo1
# mkfifo -m 666 /var/ccpd/fifo2
# mkfifo -m 666 /var/ccpd/fifo3
# mkfifo -m 666 /var/ccpd/fifo4
# mkfifo -m 666 /var/ccpd/fifo5
# mkfifo -m 666 /var/ccpd/fifo6
# mkfifo -m 666 /var/ccpd/fifo7
# chmod 666 /var/ccpd/fifo*

Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы:

# /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0
# service ccpd start
# ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd

Теперь можно запустить графическую утилиту system-config-printer для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. В частности, следует удалить авто определенный принтер с тем же (или схожим именем), но в качестве URI ссылающегося на usb:// устройство (правильный принтер ссылается на ccp:// устройство).

Взаимодействие с SELinux

Переводим SELinux в режим разрешающий (Permissive):

# setenforce 0

Запускаем документ на печать. В /var/log/audit/audit.log (при работающем audit демоне, иначе в /var/log/messages) появляются сообщения о SELinux запретах (denials). Создаём для них модули согласно Создаем собственное правило SELinux на базе аудит сообщения. Как минимум нужны два пакета - для разрешения gs execmem и ccpd write.

И возращаем SELinux в режим запретов (Enforcing):

# setenforce 1

Общий доступ к принтеру

Для возможности печати на наш принтер по сети с других рабочих станций, следует настроить CUPS и межсетевой экран.

Запускаем system-config-printer (System->Administration->Printing, Печать, Tipărire), в нем меню Server->Settings... Включаем "Publish shared printers connected to this system", "Allow printing from the Internet". Не лишне проверить стоит ли флаг "Общий доступ" в свойствах нашего принтера.

Fişier:system-config-printer_basic_settings.png

Запускаем system-config-firewall (System->Administration->Firewall, Межсетевой экран, Paravan de protecție), и включаем доступ к IPP службам:

Fişier:system-config-firewall_ipp_enable.png

После нажатия Apply можно печатать.

Для MS Windows клиентских систем, устанавливаем новый сетевой принтер по адресу http://192.168.xx.xx:631/printers/LBP1120 (подставив правильный IP адрес или сетевое имя нашего принт-сервера) и выбираем драйвер вручную из категории "Generic" - "MS Publisher Imagesetter"

Полезные советы

Для проверки состояния принтера удобно использовать графическую утилиту captstatusui. Запускается она командой:

$ captstatusui -P LBP1120

где LBP1120 - имя принтера зарегистрированного в подсистеме печати.