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

Материал из FedoraMD.org Wiki
Версия от 11:46, 3 августа 2009; VasileVsx (обсуждение | вклад) (Language neutral file links)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

ВНИМАНИЕ: команды предваряемые символом '#' должны выполняться с правами 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". Не лишне проверить стоит ли флаг "Общий доступ" в свойствах нашего принтера.

System-config-printer basic settings.png

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

System-config-firewall ipp enable.png

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

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

Полезные советы[править]

Драйвер не идеален, и не очень хорошо обрабатывает ошибочные ситуации. Поэтому:

  • всегда подключайте принтер исправным USB-кабелем, обеспечивающем надёжное соединение.
  • включайте принтер до запуска системы.

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

$ captstatusui -P LBP1120

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