частности, в ней используется другой набор конфигурационных файлов. Для приложений, специально написанных для взаимодействия с CUPS, эта система предоставляет информацию об используемых принтерах. (Для того чтобы эта информация стала доступной, средства CUPS должны выполняться и на клиентской машине, и на сервере.) Помимо протокола LPD, CUPS также поддерживает протокол печати IPP.
В UNIX-подобных операционных системах используются также другие системы печати. Одна из них применяется в некоторых версиях UNIX, построенных на базе SysV. Эта система печати может взаимодействовать с BSD LPD, но команды, используемые в ней, несколько отличаются от BSD LPD. Так, например, для передачи задания на печать вместо lpr
следует задавать команду lр
.
В табл. 9.1 перечислены системы печати, поставляемые в составе некоторых популярных дистрибутивных пакетов Linux. В случае, если система печати отсутствует в дистрибутивном пакете, вы можете установить ее отдельно, но для настройки программного обеспечения придется затратить дополнительные усилия. Одна из задач, которые вам придется решить, — обеспечить автоматический запуск сервера (этот вопрос рассматривался в главе 4).
Таблица 9.1. Стандартные программы печати в составе дистрибутивных пакетов Linux
Дистрибутивный пакет | Стандартная система печати | Альтернативная система печати |
---|---|---|
Caldera OpenLinux Server 3.1 | CUPS | Отсутствует |
Debian GNU/Linux 2.2 | BSD LPD | LPRng, CUPS |
Linux Mandrake 8.1 | LPRng | CUPS |
Red Hat Linux 7.2 | LPRng | Отсутствует |
Slackware Linux 8.0 | BSD LPD | Отсутствует |
SuSE Linux 7.3 | LPRng | CUPS |
TurboLinux 7.0 | LPRng | Отсутствует |
Различия между 'стандартными' и 'альтернативными' системами печати, приведенными в табл. 9.1, весьма условны. Например, при инсталляции Mandrake вы можете выбирать, какая из систем печати должна быть установлена: LPRng или CUPS, а в Debian по умолчанию средства печати не устанавливаются вовсе.
При составлении стандартной документации на Linux, как правило, предполагается, что в системе установлены средства печати BSD LPD. Большая часть приведенных в документации сведений справедлива также для системы LPRng, различаются лишь детали, связанные с ограничением доступа к сетевому серверу печати. Что касается CUPS, то конфигурационные файлы этой системы существенно отличаются от BSD LPD и LPRng, поэтому документы, которые касаются конфигурации системы печати, не применимы к CUPS.
Настройка сервера BSD LPD
Среди средств настройки сервера BSD LPD наиболее важны два файла: /etc/hosts.lpd
и /etc/printcap
. В первом из них указываются клиенты, которые могут обращаться к серверу для выполнения сетевых операций. Во втором определяются принтеры, доступные как для локальных, так и для удаленных пользователей. Поскольку в файле /etc/printcap
определяются и локальные, и удаленные принтеры, удаленный пользователь может передать задание на печать очереди, которая соответствует удаленной системе. Если это произойдет, задание будет принято по сети, а затем снова передано. В обычных условиях это означает напрасную затрату сетевых ресурсов, но иногда такое поведение может быть оправдано. В качестве примера можно привести ситуацию, при которой сервер печати использует Ghostscript для преобразования PostScript-файла в формат, совместимый с форматом целевого принтера.
Редактирование файла /etc/hosts.lpd
По умолчанию система BSD LPD не принимает задания на печать с удаленных компьютеров, т.е. реализующие ее программы не могут выполнять роль сетевого сервера печати. Для того, чтобы изменить конфигурацию системы, необходимо отредактировать файл /etc/hosts.lpd
. В этом файле