К содержанию   Вперед   Назад

Принтеры и печать

Концепция очередей

Назначением системы очередей является поддержка очередей заданий для их выполнения (для таких системных ресурсов, таких как, центральный процессор или принтер).

Очереди контролируются администратором через механизм очередей. Например, системный администратор может удалять задания из очереди, изменить статус задания и т.п.

Важнейшими преимуществами системы очередей являются следующие: 

· Одно задание может принадлежать нескольким очередям;
· Пользователь может распределять свои задания по различным очередям;
· С ресурсом (например, принтером) может быть связано несколько очередей. 

Описание процесса печати

Когда пользователь дает одну из команд вывода файла в очередь (qprt, lp или lpr) запрос на печать задание размещается в каталог /var/spool/lpd/qdir (при необходимости, файл копируется в каталог /var/spool/qdaemon).

Процесс qdaemon, который все время работает, поддерживает список всех определенных очередей и все время отслеживает появление новых заданий и состояние устройств вывода.

В случае, если устройство вывода доступно и не занято, qdaemon передает задание процессу локальной печати (piobe). В противном случае, qdaemon будет пытаться выполнить задание позже.

Процесс qdaemon контролируется файлом /etc/qconfig. Этот файл содержит станзы (stanza) (поименованные блоки данных) для каждой очереди.

Пример файла /etc/qconfig 

lp0: * 1 очередь подсоединенная к 1 устройству device=lp0dev discipline=fcfs lp0dev: file=/dev/lp0 backend=/usr/lib/lpd/piobe header=group trailer=never feed=never lpq: * 1 очередь подсоединенная к 2-м устройствам device=lpqdev1, lpqdev2 lpqdev1: file=/dev/lp1 backend=/usr/lib/lpd/piobe lpqdev2: file=/dev/lp2 backend=/usr/lib/lpd/piobe ps: * 2 очереди подсоединенные к 1 устройству device=psdev psdev: file=/dev/lp3 backend=/usr/lib/lpd/piobe asc: device=ascdev ascdev: file=/dev/lp3 backend=/usr/lib/lpd/piobe

Станза очереди

Станза очереди начинается с имени очереди (до 20 символов) оканчивающемся двоеточием. Первая очередь в файле /etc/qconfig является очередью по умолчанию и используется в том случае, если в команде на печать не было специально указана имя очереди. Затем указывается ссылка на используемое этой очередью устройство(а). 

Станза очереди может содержать некоторые другие атрибуты, самый важный из которых дисциплина очереди (discipline). Этот атрибут может принимать два значения: 

fcfs - такой порядок обслуживания очереди, когда первыми выполняются те задания, которые первыми поступили в очередь.
Дисциплина sjn указывает на то, что сначала будут выведены задания имеющие наименьший размер.

Станза устройства

Станза устройства начинается с имени устройства (до 20 символов), оканчивающемся двоеточием. Станза устройств должна иметь атрибут backend, который указывает местоположение выходной программы (например, программы локальной печати piobe).

Станза устройств может иметь также следующие атрибуты: 

По определению Иначе
access  write  both (используется для модемов или выходных программ требующих возможности чтения)
header  never  always, group
trailer  never  always, group
feed  never  Integer 
aling  FALSE  TRUE 

Системные файлы, ассоциированные с печатью

· Каталог /var/spool/lpd/qdir содержит информацию о файлах заданных на печать.
· Файл /etc/qconfig описывает очереди и устройства, которые с ними связаны, доступные для команд печати для размещения заданий.
· Каталог /var/spool/qdaemon содержит копии файлов заданных на печать.
· Каталог /var/spool содержит файлы и каталоги используемые программами и демонами печати.
· Каталог /var/spool/lpd/stat содержит информацию о статусе заданий сохраненных и обновленных для использования qdaemon и выходными программами. Рекомендуется для работы с этими ресурсами использовать SMIT. 

В большинстве случаев обновление стандартных системных файлов не рекомендуется. 

Задание работ печати и просмотр очереди

В различных системах UNIX используются различные команды на выполнение печати. Все эти команды имеют совсем различные опции. Для совместимости в AIX вы можете использовать все типы команд задания на печать и просмотра заданий в очереди, используемые в UNIX System V, BSD и AIX. 

SYSTEM V BSD AIX задание на печать lp lpr qprt просмотр очереди lpstat lpq qchk

Решение проблем с печатью

· Проверьте подключение кабелей.
· Проверьте включен ли принтер в состояние on-line и ready.
· Проверьте, существует ли файл устройства.
· Проверьте файл /etc/qconfig.
· Проверьте состояние qdaemon (может быть запущено два qdaemon). В этом случае рекомендуется дать команду stopsrc -s qdaemon (остановятся оба экземпляра), а затем дать команду startsrc -s qdaemon.

Управления очередями

Изменение характеристик очереди

Для быстрого вызова меню изменения характеристик очереди используйте команду smit chpq

Удаление очереди

Для быстрого вызова меню удаления очереди используйте команду smit rmpq. Учтите, что при удалении очереди пользовательские настройки принтера также удаляются. 

Управление очередью с помощью SMIT

Для быстрого вызова меню управления очереди (просмотра статуса очереди печати, старта и остановки очереди, а также для установки очереди печати по умолчанию) используйте команду smit pqmanage.

Состояния очереди

Состояние

Описание 

 DEV_BUSY Принтер занят обслуживанием других запросов на печать. Это состояние возникает в том случае, если с одним принтером связано несколько очередей и иная очередь использует принтер в настоящий момент. Такое состояние возникает также в тот момент, когда приложение, отличное от qdaemon использует данный принтер. Ваши действия: подождите, пока принтер не освободится или kill (убейте) процесс или работу, которые используют порт принтера.
DEV_WAIT Очередь ожидает принтер. Такое состояние возникает в такие моменты, когда принтер находится в состоянии offline (нет бумаги, замята бумага, проблема с кабелем и т.п.)
DOWN  Ожидание.Это состояние возникает в ситуации, когда истекает время ожидания попыток драйвера принтера установить связь с ним. Оператор может ввести очередь в это состояние на время системного обслуживания.
OPR_WAIT Очередь ожидает изменения производимые оператором. Это состояние устанавливается тогда, когда оператор заменяет бумагу (размер, ориентацию) и т.п. Обычно программным путем.
QUEUED  Работа в очереди и ожидает.
READY  Очередь готова для получения заданий на печать.
RUNNING  Файл печатается.
UNKNOWN  Проблема с очередью. Это состояние возникает в такие моменты, когда пользователь создает очередь для файла устройства, которое используется другой очередью и ее состояние DEV_WAIT.

 К содержанию   Вперед   Назад