Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30
Назад 43. Печать Вперед

Пакет CUPS-1.5.0

Знакомимся с пакетом CUPS

Система Common Unix Printing System (CUPS) является спуллером печати (диспетчером очередей заданий на печать — прим.пер.) и содержит необходимые для этого утилиты. Система базируется на использовании протокола "Internet Printing Protocol" ("Протокол печати через Интернет") и предоставляет услуги печати для большинства принтеров PostScript и растровых принтеров.

Известно, что пакет правильно собирается и работает на платформе LFS-7.0.

Информация о пакете

Зависимости пакета CUPS

Рекомендуемые

libjpeg-8c, libpng-1.5.5 и LibTIFF-4.0.0

Необязательные

TCP Wrappers-7.6, D-BUS-1.4.16, libusb-1.0.8, acl-2.2.51, Linux-PAM-1.1.5, OpenLDAP-2.4.23, GnuTLS-3.0.7 или OpenSSL-1.0.0e (ищется в указанном порядке), Heimdal-1.4 или MIT Kerberos V5-1.6, PHP-5.3.8, GPL Ghostscript-9.04, Python-2.7.2, IcedTea6-1.9.7 или JDK-6 Update 18, Xdg-utils, OpenSLP, libpaper, HTMLDOC и Valgrind (может использоваться в случае, если запускаются наборы тестов)

Замечания для пользователей: http://wiki.linuxfromscratch.org/blfs/wiki/cups

Конфигурирование ядра

Если у вас есть притер, подключаемый к параллельному порту, то вы должны в ядре включить следующие парамектры и перекомпилировать ядро:

Device Drivers  --->
  [*] Parallel port support  --->
    [*]   PC-style hardware
...
  Character devices  --->
    [*] Parallel printer support

Замечание

Если у вас используется принтер USB, то возникает конфликт между движком libusb пакета Cups и драйвером ядра. Если вы хотите использовать Cups с поддержкой libusb, тот не включайте в ядре поддержку принтера USB и удалите параметр --disable-libusb когда вы конфигурируете пакет Cups.

Еслии вы хотите использовать драйвер ядра usblp, то в конфинурации иядра всключите следующие настройки и перекомпилируйте ядро:

Device Drivers  --->
  [*] USB support  --->
...
Enable support for either UHCI or OHCI, not both:
    [*]   OHCI HCD support
    [*]   UHCI HCD (most Intel and VIA) support
...
    [*]   USB Printer support

Установка пакета CUPS

Создайте пользователя lp, поскольку CUPS будет создавать некоторые файлы, принадлежащие этому пользователю. (Пользователь lp по умолчанию используется системой CUPS, но можно использовать другого пользователя, если передать параметр в скрипт configure). В роли пользователя root воспользуйтесь следующей командой:

useradd -c "Print Service User" -d /dev/null -g lp -s /bin/false -u 9 lp

Установите пакет CUPS с помощью следующих команд:

sed -i 's#@CUPS_HTMLVIEW@#firefox#' desktop/cups.desktop.in &&
./configure --localstatedir=/var --disable-libusb --with-rcdir=/tmp &&
make

Чтобы проверить результаты, выполните команду make check. В результате будет запущен основной набор тестов без какого-либо нагрузочного тестирования. Если вы хотите запустить тесты, в которых указаны параметры, отличные от используемых по умолчанию, то выполните команду make test. Обратите внимание, что при выполнении теста "torture load testing" ("нагрузочное тестирование") будет затрачено больше ресурсов, чем отображается в командной строке.

Теперь в роли пользователя root выполните:

make install &&
mv -v /usr/share/doc/cups /usr/share/doc/cups-1.5.0

Файлы man устанавливаются в сжатом формате (.gz). Если вы хотите, то можете использовать следующие команды для того, чтобы их разархивировать:

pushd /usr/share/man/                                  &&
find -name cups\*gz -type l -print -delete             &&
find -name \*gz -exec gunzip -v {} \;                  &&
popd                                                   &&

ln -v -s cupsaccept.8 /usr/share/man/man8/reject.8     &&
ln -v -s cupsaccept.8 /usr/share/man/man8/cupsreject.8 &&
ln -v -s cupsaccept.8 /usr/share/man/man8/accept.8     &&
ln -v -s cupsenable.8 /usr/share/man/man8/cupsdisable.8

Пояснение команд

sed -i 's#@CUPS_HTMLVIEW@#firefox#' ...: С помощью этого параметра указывается браузер, который используется на рабочем столе для Cups для организации веб интерфейса.

--localstatedir=/var: С помощью этих команд изменяется месторасположение директориев, используемых для хранения кэша, журнальных файлов, списка запущенных задач и очереди задач на печать, с директория /usr/var на директорий /var.

--disable-libusb: С помощью этой команды отменяется использование libusb пакета Cups. Если ивы хотите использовать библиотеку libusb, то удалите эту команду и удостоверьтесь, что при компиляции ядра не был установлен параметр # CONFIG_USB_PRINTER

--with-rcdir=/tmp: С помощью этого параметра указывается устанавливать загрузочный скрипт в директорий /tmp, а не в дщиректорий /etc/rc.d.

Конфигурирование пакета CUPS

Конфигурирование CUPS зависит от типа принтера и может оказаться сложным. Обычно использовать принтеры PostScript сравнительно легко. Подробные инструкции по конфигурированию и применению пакета CUPS смотрите на http://www.cups.org/documentation.php. Особенно полезны Software Administrators Manual (Руководство администратора) и Software Users Manual (Руководство пользователя).

Чтобы можно было печатать на принтерах, не являющихся PostScript-принтерами, вам нужно установить пакет GPL Ghostscript-9.04, который будет конвертировать PostScript-изображения в растровые изображения, и драйверы (например, из Gutenprint-5.2.5), которые будут преобразовывать растровые изображения в вид, понятный для принтера. Драйверы Foomatic используют Ghostscript для того, чтобы преобразовывать PostScript непосредственно в формат, используемый при печати, но это считается специальной уловкой разработчиков CUPS.

Загрузочный скрипт

Во время установки пакет CUPS добавляет в директорий /etc/rc.d загрузочные файлы. Эти скрипты будут работать в большинстве случаев, но они неработоспособны в случаях, когда принтеры используются клиентами Samba. Кроме того, они не согласуются со стандартными скриптами в стиле LFS. Замените установленные скрипты скриптами и символическими ссылками, имеющимися в пакете blfs-bootscripts-20111226:

make install-cups

Описание пакета

Установленные программы: accept, cancel, cups-config, cupsaccept, cupsaddsmb, cupsctl, cupsd, cupsdisable, cupsenable, cupsfilter, cupsreject, cupstestdsc, cupstestppd, lp, lpadmin, lpc, lpinfo, lpmove, lpoptions, lppasswd, lpq, lpr, lprm, lpstat, ppdc, ppdhtml, ppdi, ppdmerge, ppdpo, reject

Установленные библиотеки: libcups.{so,a}, libcupscgi.{so,a}, libcupsdriver.{so,a}, libcupsimage.{so,a}, libcupsmime.{so,a}, libcupsppdc.{so,a} и различные фильтры и драйвера движков

Установленные директории: /etc/cups, /usr/{include,lib,share}/cups, /usr/share/doc/cups-1.5.0 и /var/{cache,log,run,spool}/cups

Краткое описание

accept

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

cancel

удаляет из очереди задания на печать

cups-config

конфигурационная утилита программы CUPS

cupsaddsmb

экспортирует принтеры в программы Samba для их использования с клиентами Windows

cupsd

планировщик системы печати Common Unix Printing System

cupstestppd

проверяет правильность файлов PPD

disable

останавливает указанные принтеры или классы

enable

запускает указанные принтеры или классы

lp

передает файлы на печать или изменяет состояние приостановленного задания

lpadmin

конфигурирует принтер и очереди классов, используемые в CUPS

lpc

предоставляет некоторое управление принтером и очередями классов, используемыми в CUPS

lpinfo

перечисляет имеющиеся устройства или драйверы, известные серверу CUPS

lpmove

перемещает указанное задание с учетом нового назначения

lpoptions

отображает или устанавливает текущие настройки принтера или настройки, используемые по умолчанию

lppasswd

добавляет, изменяет или удаляет пароли в дайджест файле passwd.md5 с паролями CUPS

lpq

показывает текущее состояние очереди печати для указанных принтеров

lpr

регистрирует файлы для печати

lprm

удаляет задания, находящиеся в очереди на печать

lpstat

отображает информацию о состоянии текущих классов, заданий и принтеров

reject

указывает системе печати больше не использовать задания на печать из указываемого места

Перевод сделан с варианта оригинала, датированного 2011-12-22 13:31:44 +0000


Предыдущий раздел: Оглавление Следующий раздел:
Содержание главы 23   Пакет LPRng-3.8.B