Используйте следующую команду для удаления фильтра:
Ъ2 /usr/lib/lpfilter -f Ъ1filtername -Х
sysadmsh пользователи выбирают:
Printers-->Auxiliary-->Filter-->Remove
(Принтеры-->Вспомогательное-->Фильтр-->Удаление)
-15-62-
Проверка фильтра
Вы можете проверить определение фильтра после добавления
его к обслуживанию печати. Команда lpfilter отображает опреде-
ление фильтра в форме, удобной для ввода, так что вы можете
сохранить выход в файле для последующих ссылок.
Вы можете использовать одну из следующих команд для про-
верки определенного фильтра:
Ъ2 /usr/lib/lpfilter -f Ъ1filtername -l
Ъ2 /usr/lib/lpfilter -f Ъ1filtername Ъ2-l>filename
sysadmsh пользователи выбирают:
Printers-->Auxiliary-->Filter-->List
(Принтеры-->Вспомогательное-->Фильтр-->Список)
Первая команда предоставляет определение фильтра на вашем
экране. Вторая команда фиксирует это определение в файле, кото-
рый позднее может использоваться для переопределения фильтра,
если вы случайно удалили фильтр из обслуживания печати.
Предупреждение
Добавление, изменение или удаление фильтров может привести
к отмене стоящих в очереди запросов печати. Это происходит по-
тому, что обслуживание печати оценивает каждый запрос печати,
еще стоящий в очереди, чтобы увидеть, какие из них подвержены
изменению фильтра. Запросы, которые более не печатаются из-за
того, что фильтр удален или изменен, отменяются (с посылкой из-
вещений пользователям, которые их послали). Может также возни-
кать задержка в ответ на новые или измененные запросы печати,
когда фильтры изменяются из-за многих характеристик, которые
должны быть оценены для каждого запроса печати, еще стоящего в
очереди. Эта задержка может стать ощутимой, если имеется боль-
шое число запросов, нуждающихся в фильтрации.
Из-за этого возможного влияния вы можете захотеть сделать
изменения в фильтре во время периодов, когда обслуживание печа-
ти не используется интенсивно.
-15-62а-
Чистка журнала запросов
Оглавления /usr/spool/lp/temp и /usr/spool/lp/requests со-
держат файлы, которые описывают каждый запрос, который был пос-
лан обслуживанию печати LP. Каждый запрос имеет два файла по
одному в каждом оглавлении, которые содержат информацию о зап-
росе. Информация разбита для помещения более чувствительной ин-
формации в оглавление /usr/spool/lp/requests, где она может
-15-63-
оставаться секретной. Файл запроса защищен от всех, кроме поль-
зователя который послан запрос, в то время как файл /usr/spool/
lp/requests защищен даже от посылающего пользователя.
Эти файлы остаются в оглавлениях только пока запрос нахо-
дится в очереди. После завершения запроса информация в файлах
объединяется и добавляется в файл /usr/spool/lp/logs/requests.
Этот файл не удаляется обслуживанием печати LP, но может перио-
дически чиститься, используя, например, средство cron. Смотрите
описание команды crontab в главе "Использование команд планиро-
вания заданиями: at, cron, batch" в документе.
Элемент crontab, принимаемый по умолчанию и предлагаемый
системе обслуживания печати LP, показан ниже:
13 3 * * * cd /usr/spool/lp/logs; if [ -f
requests ]; then /bin/mv requests xyzzy; /bin/cp
xyzzy requests; >xyzzy; /usr/lbin/agefile -c2
requests; /bin/mv xyzzy requests; fi
(Это одна строка в crontab, но она разбита здесь на нес-
колько строк для облегчения чтения). Если кратко, то этот эле-
мент делает следующее: создает поколение файла, изменяет имя
requests1 и пересылает копию прежнего дня в requests2. Число 2
в возможности -с. Программа agefile запрашивает хранение в фай-
лах журнала информации двух предыдущих дней, отбрасывая более
старую информацию в файлах журнала. Изменяя это число, вы може-
те изменить сохраняемую информацию. С другой стороны, если вы
хотите сохранять информацию чаще или хотите сбрасывать файл ча-
ще, чем раз в день, измените время, когда элемент crontab вы-
полняется изменением первых двух чисел. Текущие значения 13 и 3
приводят к тому, что сброс происходит каждый день в 3:13.
Представляемый по умолчанию элемент crontab достаточен для
хранения старых записей запросов печати для накопления в файло-
вой системе накопления. Вы можете захотеть сконцентрировать ин-
формацию в журнале запроса для получения доклада об использова-
нии обслуживания печати LP или добавления в генерируемую
учетную информацию. Вы можете получить различные процедуры,
проверяющие файл и извлекающие информацию перед процедурой
сброса.
Журнал запросов имеет простую структуру, облегчающую изв-
лечение данных с помощью общих команд оболочки UNIX. Запросы
перечисляются в порядке, в котором они печатались и разделяются
-15-63а-
строками, которые присваивают запросу идентификатор. Каждая
строка ниже линии разделения отмечается отдельной буквой, кото-
рая идентифицирует вид информации, содержащейся в строке. Каж-
дая буква отделяется от данных одним пробелом. Смотрите следую-
щую таблицу для получения дополнительной информации.
-15-64-
Таблица 15.7
Элементы журнала запросов
Символ Содержимое строки
---------------------------------------------------------------------------
= Это строка разделитель, содержащая идентификатор зап-
роса, идентификатор пользователя и группы пользовате-
лей, полное число байтов в первоначальных (нефильтро-
ванных) файлах и время постановки запроса в очередь.
Эти элементы разделяются запятыми и располагаются в
порядке именования. Идентификатор пользователя, иден-
тификатор группы и размеры имеют перед собой слова
uid, gid или size соответственно.
С Число печатаемых копий
D Назначение принтера или класса или слово any
F Имя печатаемого файла. Строка повторяется для каждого
печатаемого файла, и файлы печатаются в приведенном
порядке.
f Имя используемой формы
H Тип используемой специальной обработки, расшифрован-
ный (resume, hold,immediate). Единственное полезное
значение, имеющееся в этой строке - это immediate.
N Тип предупреждения, используемый при успешном завер-
шении запроса печати. Тип - это буква М, если пользо-
ватель был извещен почтой или W, если пользователь
был извещен сообщением на терминал
О Возможности -о
Р Приоритет запроса печати
p Список печатаемых страниц
r Эта однобуквенная строка представлена, если пользова-
тель запросил первичную обработку файлов (возможности
-r команды lp)
S Используемый набор символов или механизм печати
s Выход запроса, как комбинация отдельных битов, выра-
женная в шестнадцатеричной форме. В то время, как
несколько битов используются внутренне спулером, наи-
более важные биты перечислены ниже: 0х0004 Медленная
фильтрация завершилась успешно 0х0010 Печать заверши-
лась успешно 0х0040 Запрос отменен 0х0100 Запрос не
смог выполнить фильтрацию или печать
-15-65-
T Титул, помещенный на странице заголовка
t Тип содержимого, обнаруженный в файле (файлах)
U Имя пользователя, который послал запрос печати
x Медленный фильтр, используемый для запроса
Y Список специальных режимов для фильтров, используемый
для печати запроса
y Быстрый фильтр, используемый для запроса
z Принтер, используемый для запроса. Имеется различие
для назначения (строка D), если запрос поставлен в
очередь для любого принтера или класса принтеров или
если запрос был переслан по другому назначению адми-
нистратором обслуживания печати
-15-66-
НАСТРОЙКА ОБСЛУЖИВАНИЯ ПЕЧАТИ
Хотя обслуживание печати пытается быть достаточно гибким
для обработки большей части потребностей принтеров и печати,
оно не может быть полным. Вы можете купить принтер, который не
вполне соответствует способу, каким обслуживание печати обраба-
тывает принтеры, или же может иметь потребности печати, которые
не соответствуют обслуживанию печати.
Вы можете настроить обслуживание печати несколькими спосо-
бами. В данном разделе рассказывается, как вы можете:
- Настроить характеристики порта принтера,
- Настроить базу данных terminfo,
- Написать интерфейсную программу, и
- Написать фильтр.
Диаграмма на рисунке 15-1 дает обзор обработки запроса пе-
чати:
Рис. 15-1 Как процессы LP печатают запрос лазерного файла lp -d
1 - команда lp;
2 - конфигурация обслуживания печати;
3 - обслуживание печати (демон накопления);
4 - выборочный медленный фильтр;
5 - экранирование задания;
6 - инициализация принтера;
7 - база данных terminfo;
8 - стандартная интерфейсная программа;
9 - фильтр по умолчанию;
10 - выборочный быстрый фильтр;
11 - лазерный принтер;
12 - ключ;
-15-66а-
13 - коммуникационный путь;
14 - управление процессами UNIX;
15 - управление процессами UNIX (альтернативное);
16 - доступ к данным;
17 - процесс UNIX;
18 - дисковые файлы.
-15-67-
Каждый запрос печати посылается демону накопления, который
отслеживает все запросы. Демон создается, когда вы запускаете
обслуживание печати LP. Системный процесс UNIX отвечает также
за отслеживание состояния принтеров и медленных фильтров; когда
принтер завершает печать пользовательского файла, демон начина-
ет печать другого запроса, если он стоит в очереди.
Вы можете настроить обслуживание печати настройкой или за-
меной некоторых элементов, показанных на рисунке 15-1 (номера
расшифровываются на диаграмме).
1. Для большинства принтеров вам необходимо лишь изменить
конфигурацию принтера, запомненную на диске. В предыдущих
разделах данной главы объясняется, как это сделать. Неко-
торые из более зависящих от принтера данных конфигурации -
это характеристики порта принтера: скорость передачи, чет-
ность и так далее.
2. Для принтеров, которые не представлены в базе данных
terminfo, вы можете добавить новый элемент, описывающий
возможности принтера. Эта база данных используется в двух
паралельных направлениях: экранирование запросов печати с
целью убедиться, что принятые запросы могут обрабатываться
нужным принтером и установка принтера так, что он готов
печатать запрос.
Например, если база данных terminfo не выдает принтер, ко-
торый может задавать длину страницы, запрошенную принте-
ром, то демон накопления отвергает запрос. С другой сторо-
ны, если она показывает, что может выдать такой принтер,
то та же самая информация используется интерфейсной прог-
раммой для инициализации принтера.
3. Для особенно сложных принтеров или, если вы хотите доба-
вить возможности, не обеспеченные стандартным обслуживани-
ем печати LP, вы можете изменить стандартную интерфейсную
программу. Эта программа отвечает за управление принтером:
она печатает страницу заголовка, инициализирует принтер и
вызывает фильтр для посылки копий файлов пользователя на
принтер.
4аb. Для обеспечения связи между приложениями, используемой
системой и принтерами, вы можете добавить медленные и
быстрые фильтры. Каждый тип фильтра может преобразовать
файл в другую форму, отображая один набор последователь-