Россия, Москва, Московский Авиационный Институт, 2009 |
Использование принтеров
Хотя LP отвечает большей части требований к распечатке, существуют принтеры, которые не совсем соответствуют способу обработки принтеров сервисом LP.
Вы можете осуществить настройку LP несколькими способами. В этом подразделе рассказывается как вы можете:
- настроить характеристики портов принтеров;
- настроить базу данных Terminfo ;
- написать программу интерфейса.
7.12. Настройка сервиса принтера
7.12.1. Как LP обрабатывает файл запроса
Каждый запрос отсылается в spooling daemon, который следит за всеми запросами. Следящий процесс (демон) создается, когда вы запускаете сервис принтера LP. Этот процесс системы UNIX также отвечает за слежением за состоянием принтеров и медленных фильтров; когда принтер заканчивает распечатку файла пользователя, демон запустит на нем распечатку другого запроса, если он есть в очереди.
Вы можете настроить сервис принтера, если настроите или замените некоторые из элементов процесса.
- Для большей части принтеров вам нужно изменить конфигурацию, хранящуюся на диске. Некоторые из наиболее зависимых от конфигурации принтера данные - это характеристики порта принтера: скорость передачи, контроль четности и т.д.
- Для принтеров, которые не представлены в базе данных Terminfo, вы можете добавить новый элемент, который описывает возможности принтера. Эта база данных позволяет: просматривать запросы, чтобы гарантировать, что те, которые приняты к распечатке могут быть обработаны требуемым принтером; устанавливать принтеры в состояние, когда у него будет готовность распечатать запрос. Например, если база данных Terminfo показывает, что принтер не в состоянии установить длину страницы, запрошенную пользователем, следящий процесс отвергнет этот запрос. С другой стороны, если она показывает, что принтер может это сделать, то та же самая информация будет использована программой интерфейса для инициации принтера.
- Для особенно трудных в работе принтеров или когда вы хотите добавить средства, не обеспеченные поставленным сервисом LP, вы можете изменить стандартную программу интерфейса. Эта программа отвечает за управление принтером: она распечатывает заглавную страницу, инициирует принтер, а также вызывает фильтр для отсылки копий файлов пользователя на принтер.
- Чтобы обеспечить связь прикладных программ, используемых в вашей системе, и принтеров, вы можете добавить быстрые и медленные фильтры. Каждый тип фильтра может преобразовывать один набор последовательности переключения кода в другой, а также может обеспечить специальную установку, прервав режимы распечатки, запрошенные пользователем. Медленные фильтры функционируют отдельно с помощью демона, чтобы избежать ограничения принтера. Быстрые фильтры функционируют так, что их вывод идет прямо на принтер, таким образом, они могут управлять работой принтера.
7.12.2. Настройка характеристик порта принтера
Вам следует удостовериться, что характеристики порта принтера, установленные LP, согласуются с установками линии связи принтера. Стандартные установки порта были созданы для работы с типичными файлами системы UNIX и многими принтерами, но они не будут работать со всеми файлами и принтерами. Это не является шагом настройки, т.к. стандартным свойством LP является предоставление вам возможности указать установки порта для каждого принтера. Однако, это является важным шагом в подготовке вашего принтера к работе с LP.
Когда вы добавляете новый принтер, прочтите документацию к нему, чтобы иметь представление о том, что он ожидает от главной машины. Затем изучите команду stty. Она сводит воедино различные характеристики, которые невозможно установить на терминале или в порт принтера.
В табл. 7.2 перечислены параметры команды stty, которые имеют значение для принтеров.
7.12.3. Настройка базы данных Terminfo
LP полагается на страндартный интерфейс и базу данных Terminfo при иницииации каждого принтера и установке выбранного размера страницы, шага расположения символов, шага строки и набора символов. Обычно бывает достаточно сделать правильный ввод элементов в базу данных Terminfo, чтобы добавить новый элемент к LP . Несколько элементов принтеров AT&T поставляются вместе с элементами Treminfo в пакете LP.
Каждый принтер идентифицируется в базе данных Terminfo по короткому имени; этот вид имени идентичен тому, которое используется для установки пременной командного файла TERM. Например, принтер AT&T модель 455 идентифицируется по имени 455.
Если вы не можете найти элемент Terminfo для вашего принтера, вам надо его добавить. Если вы этого не сделаете, вы сможете использовать принтер с LP, но у вас не будет возможности получать автоматический выбор размера страницы, шага и набора символов, и у вас могут возникать трудности с установкой принтера в правильные режимы для каждого запроса на распечатку. Другим вариантом, которым можно воспользоваться вместо обновления элемента Terminfo, это настроить программу интерфейса, используемую с принтером.
В табл. 7.3 пречислены элементы, которые нужно определить, прежде чем добавить новый принтер в базу Terminfo.
Те элементы, которые помечены звездочкой ( * ), имеются во всех версиях UNIX System V. Остальные можно добавить только, если вы используете систему UNIX System V версии 3.2 или более поздние.
После того как вы создали новый элемент, вам нужно скомпилировать его в базу данных, используя программу tic. Просто введите следующую команду:
tic filename
где filename - это имя файла, содержащего элемент Terminfo для нового принтера.
Примечание. Сервис принтера LP работает наиболее эффективно, если кэширует информацию из базы данных Terminfo. Если вы добавляете или удаляете элементы из Terminfo или изменяете значения, управляющие установками шагов, шириной и длиной страницы вам следует перезапустить LP, чтобы он использовал новую информацию.