Библиотека сайта rus-linux.net
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.
Информация о пакете
- Загрузка (HTTP): http://ftp.easysw.com/pub/cups/1.5.0/cups-1.5.0-source.tar.bz2
- Загрузка (FTP): ftp://ftp.easysw.com/pub/cups/1.5.0/cups-1.5.0-source.tar.bz2
- Контрольная сумма MD5: e54ed09ede2340fc3014913333520fe4
- Размер загружаемого пакета: 3,9 MB
- Оценочный размер требуемого дискового пространства: 91 MB
- Оценочное время сборки: 0,7 SBU
Зависимости пакета 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 | добавляет, изменяет или удаляет пароли в дайджест файле |
lpq | показывает текущее состояние очереди печати для указанных принтеров |
lpr | регистрирует файлы для печати |
lprm | удаляет задания, находящиеся в очереди на печать |
lpstat | отображает информацию о состоянии текущих классов, заданий и принтеров |
reject | указывает системе печати больше не использовать задания на печать из указываемого места |
Перевод сделан с варианта оригинала, датированного 2011-12-22 13:31:44 +0000
Предыдущий раздел: | Оглавление | Следующий раздел: |
Содержание главы 23 | Пакет LPRng-3.8.B |