------Adding a Printer-------------------------+ | | | | | | | Printer name [ ] | | | | | | | | Comment [ ] | | | | | | | | Class name [ ] | | | | | | | | Use printer interface [Existing] Copy New | | | | Name of interface [ ] | | | | | | | | Connection [Direct] Call-up | | | | Device name [ ] | | | | Dial-up information [ ] | | | | Device [Hirdwired] Login | | | | | | | | Require banner Yes [No] | | | +----------------------------------------------------------+ | +--------------------------------------------------------------+ 1 - создать, 2 - ввод, 3 - добавление принтера, 4 - имя принтера, -15-5а- 5 - комментарий, 6 - имя класса, 7 - использование интерфейса принтера, 8 - существующий, 9 - копия, 10 - новый, 11 - соединение, 12 - прямой, 13 - вызываемый, 14 - имя устройства, 15 - информация подключения, 16 - устройство, 17 - аппаратное, 18 - подключение, 19 - требует заголовок, 20 - да, 21 - нет. Далее приводится объяснение каждого поля:  Printer name имя нового принтера (имя принтера) Comment  комментарий, описывающий принтер (комментарий) Class name имя класса, связанного с этим принтером (имя класса) (<F3> для списка) Use printer interface использует существующий, копированный (использует интерфейс или новый интерфейс пользователя пользователя) -15-6- Name of interface имя интерфейса (или <F3> к списку существую- (имя интерфейса) щих интерфейсов) Connection должен ли принтер быть прямо связан с сис- (соединение)  темой или должен вызываться через модем или  сеть Device является ли соединение выделенным для прин- (устройство) тера или оно также используется для терми- нала login (будет закрыто планировщиком) Device name имя устройства, к которому присоединен (имя устройства) принтер (например /dev/tty01 для последова- тельного принтера и /dev/lp0 для параллель- ного принтера) Dial-up information телефонный номер модема или системное (информация набора) имя сети Require banner  приводит к тому, что заголовок всегда (требует заголовок) печатается или позволяет пользователю закрашивать печать заголовка. Когда вы закончите заполнение формы, она выполняется и формируется новая конфигу- рация. Для использования принтера вы так- же должны запустить обслуживание принте- ра, открыть принтер и разрешить принтеру получение запросов. Сделайте это, исполь- зуя следующий выбор sysadmish:  Printers --> Shedule --> Begin (принтеры планирование начало)  Printers --> Shedule --> Enable (принтеры планирование открытие)  Printers --> Shedule --> Accept (принтеры планирование прием) В случае выборов Enable и Accept вы должны обеспечить имя принтера при выдаче подсказки. Дальнейшая информация о командах обслуживания принтера со- держится в разделах "Запуск и останов обслуживания принтера", "Управление первичной загрузкой" и "Открытие и закрытие принте- ров". Sysadmish включает все эти функции, дополняя команду lpadmin(ADM). -15-7-  СВОДКА КОМАНД ПОЛЬЗОВАТЕЛЯ Обслуживание печати имеет три команды пользователя, пока- занные в таблице 15.1  Таблица 15.1 Команды пользователя для обслуживания печати Команда | Описание ------------+------------------------------------  Cancel | Отменяет запрос на печать файла ------------+------------------------------------  lp | Посылает файл или файлы на принтер ------------+------------------------------------  lpstat  | Сообщает состояние системы LP Кроме посылки запросов в систему обслуживания печати, про- верки состояния запросов и отмены запросов, пользователи должны иметь возможность закрывать и открывать принтер. Идея состоит в том, что если пользователь обнаруживает, что принтер неиспра- вен, нет необходимости вызывать админиcтратора для выключения питания. С другой стороны не имеет смысла в среде печати позво- лять обычным пользователям закрывать принтер. Вы можете контро- лировать, имеют ли доступ другие пользователи к двум командам, показанным в таблице 15.2, назначением или отменой авторизации printerstat (смотрите раздел "Изменение/Назначение авторизации подсистемы пользователя" в главе" Контроль учета пользователя" данного руководства).  Таблица 15.2 Привилегированные команды пользователя для обслуживания печати Команда | Описание ------------+---------------------------------------- disable  | деактивизирует именованный принтер(ы) ------------+----------------------------------------  enable | активизирует именованный принтер(ы) -15-8-  СВОДКА АДМИНИСТРАТИВНЫХ КОМАНД Отдельный набор команд, доступных для администратора LP, показан в таблице 15.3. Эти команды содержатся в оглавлении /usr/lib. Если вы собираетесь использовать их часть, то может оказаться удобным включение этого оглавления в переменную PATH. Для использования административных команд следует подключиться к системе либо в качестве корня, либо следует иметь авторизацию lp (смотрите главу "Обеспечение секретности системы" для объ- яснения авторизации). Заметим, что все эти команды доступны при выборе "Принте- ры" sysadmsh. Вам также вероятно понадобится использовать ко- манды для деактивизации и активизации принтера и остальные ко- манды, описанные в разделе "Сводка команд пользователя", приведенном выше.  Таблица 15.3 Административные команды для обслуживания печати LP Команда | Описание ------------------+---------------------------------------  /usr/lib/accept | позволяет запросам работ помещаться в | очередь по определенному назначению. ------------------+---------------------------------------  /usr/lib/reject | препятствует постановке заданий в очередь | по определенному назначению. Описывается на | той же странице руководства, что и | accept(ADM). ------------------+--------------------------------------- /usr/lib/lpadmin| задает или изменяет конфигурацию | принтера. ------------------+---------------------------------------  /usr/lib/lpfilte| задает или изменяет определения фильтров. ------------------+---------------------------------------  /usr/lib/lpforms| задает или изменяет формы при печати. | (Введите /usr/lib/lpadmin для монтирования | формы). ------------------+--------------------------------------- /usr/lib/lpmove | пересылает выходные запросы от одного | назначения к другому. Описано на той же | странице руководства, что и lpsched(ADM). -15-9- ------------------+---------------------------------------  /usr/lib/lpsched| запуск обслуживания печати. /usr/lib/lpscut | останавливает обслуживание печати. | Описано на той же странице руководства, что | и lpsched(ADM). ------------------+---------------------------------------  /usr/lib/lpusers| задает или изменяет приоритет по умолчанию | и границы приоритета, которые, могут быть | запрошены пользователями обслуживания | печати. Эти команды доступны также выбором "Принтеры" sysadmsh, что много проще сложного синтаксиса команд LP. -15-10-  ДОБАВЛЕНИЕ ЛОКАЛЬНОГО ПРИНТЕРА Операционная система также обеспечивает использование ло- кальных принтеров, присоединенных к порту AUX или PRINT на зад- ней панели обычного последовательного терминала. Эти принтеры присоединяются через стандартные связи RS-232 и могут значи- тельно уменьшить загрузку разделяемых системных ресурсов. Ко- манда lprint(C) используется для печати файлов на локальном принтере, но терминал должен быть правильно конфигурирован, чтобы команда работала. Для добавления принтера, связанного с портом AUX или PRINT через заднюю панель обычного принтера и использования этого локального принтера выполните следующую процедуру: 1. Присоедините локальный последовательный принтер к порту AUX вашего терминала стандартным кабелем RS-232 с соеди- ненными контактами 2, 3 и 7 (минимум). Убедитесь, что принтер включен и находится в состоянии онлайн. 2. Подключитесь к системе UNIX с терминала и проверьте, что терминал работает правильно. 3. Убедитесь, что порт AUX терминала конфигурирован так же, как и принтер (скорость передачи, четность, биты данных, XON/XOFF и так далее). 4. Чтобы команда lprint работала, lprint должна знать, как запустить и остановить локальную печать для каждого от- дельного терминала. lprint просматривает файл /etc/termcap для нахождения двух атрибутов терминала: PN (запуск печати) и PS (останов печати). Это последователь- ности выхода, которые должны посылаться на терминал для управления локальной печатью. Только несколько терминалов имеют эти атрибуты, определенные в элементах termcap. Ис- пользуйте текстовый редактор (такой, как Vi(C)) для про- верки файла /etc/termcap. (/etc/termcap может также быть альтернативным файлом, как это определяется переменной TERMCAP). Найдите этот элемент для вашего терминала. Нап- ример, если терминалом является Wyse60, вам следует искать wyse60. Элемент termcap выглядит следующим образом: -15-11- w7|wy60|wyse60|Wyse WY-60 with 80 column/24 line screen in wy60 mode:\ :is=\E`\072\Ee(\EO\Ee6\Ec41\E 4\Ec21\Ed/:\ :if/usr/lib/tabset/std:pt:\ :G1=\EH3:G2=\EH2:G3=\EH1:G4=\EH5:GD=\EH0:GG#0:GH=\TH\072:\ :GU=\EH=:GV=\EH6:GR=\EH4:GL=\EH9:GC=\EH8:GF=\EH7:\ :PU=\EJ:PD=\EK:\ :a1=\EE:am:bs:bt=E1:cd=\EY:ce=\ET:c1=\E+:\ :cm=\Ea%i%dR%dC:co#80:dc=\EW:dl=\ER:ei=\Er:im=\Eq:k0=^AI\r:\ :k1=^A@\r:k2=^AA\r:k3=^AB\r:k4=^AC\r:k5=^AD\r:k6=^AE\r:k7= 6AF\r:\ :k8=6AG\r:k9=^AH\r:kd=^J:kh=^ :kl=^H:kr=6L:ku=^K:\ :li#24:mi:nd=^L:se=\EG0:so=\EG4:sg#0:ug#0:ue=\EG0:u1:up=^K:us =\EG8: w8|wy60|wyse60|Wyse WY-60 with 132 column/24 line screen in wy60 mode:\ :is=\E`\073\Ee(\EO\Ee6\Ec41\E 4\Ec21\ :if/usr/lib/tabset/std:pt:\ :G1=\EH3:G2=\EH2:G3=\EH1:G4=\EH5:GD=\EH0:GG#0:GH=\TH\072:\ :GU=\EH=:GV=\EH6:GR=\EH4:GL=\EH9:GC=\EH8:GF=\EH7:\ :PU=\EJ:PD=\EK:\ Wyse60 не содержит определения PN и PS. Как и в случае других терминалов следует добавить строку, содержащую эти два атрибута для элемента /etc/termcap для вашего термина- ла. Добавляемая строка имеет вид: -15-11а- :PN=start sequence:PS=stop sequence:\ 5. Обратитесь к руководству по терминалу для обнаружения пос- ледовательности управляющих символов, используемых для пе- реключения дополнительного порта. Иногда это называется как режим "путь через" или "прозрачный режим". Примером последовательности, разрешающей дополнительную печать, яв- ляется код включения порта для Wyse 60 терминала: <ESC> d # А код, выключающий его снова - это: <CTL>t 6. Эти ключевые строки должны транслироваться в формат termcap перед их помещением в файл termcap. termcap использует следующие коды, представляющие ключевые строки: -15-12- +------------------+---------------------------+ | Ключевая строка | Последовательность termcap| +------------------+---------------------------+ | ESCAPE | \E | | CTRL-x | ^x (x - это любой символ) | | NEWLINE | \n | | RETUTN | \r | | TAB | \t | | BACKSPACE | \b | | FORMFEED | \f | +------------------+---------------------------+ Для использования управляющей последовательности исполь- зуйте символ (^), а не клавишу <CTL>. Например <CTL> х мо- жет быть представлено ^х. Кроме того символы могут быть представлены их восьмеричными кодами (смотрите ascii(M), и символами обратная черта и (^), представленными как \^ и \ \ соответственно). Элементы для атрибутов termcap должны быть разделены двоеточием (:). (Смотрите termcap(M) для получения дополнительной информации). Напомним, что атрибутами termcap для запуска и останова печати являются PN и PS. Использованием приведенный выше табли- цы можно получить, что элемент termcap для ключевой строки Wyse 60 <ESC> # d (начало печати, PN) и <CTL> Т (останов печати, PS) выглядит следующим образом: :PN=\Ed#:PS=^T:\ 7. Для терминала Wyse 60 вы просто вставляете указанную выше строку в элемент termcap для Wyse 60. (Вы должны убедить- ся, что строка вставляется в пределах элемента для вашего терминала; не добавляйте ее, как первую строку или послед- нюю строку). Для других терминалов проверьте руководство и найдите пра- вильные последовательности для включения и выключения до- полнительного режима печати и подставьте последовательнос- ти termcap, как в этом примере. Некоторые терминалы (такие, как Wyse60) включают "прозрачный" режим, когда данные не отображаются на экране во время печати. (Это ре- жим, выбранный последовательностью PN в данном примере). -15-12а- Примечание Вы должны быть подключены к системе в качестве корня для ре- дактирования /etc/termcap. Мы рекомендуем, чтобы вы не копи- ровали первоначальный файл под другим именем в случае, когда вы совершаете ошибку. Вы можете также извлечь файл снова из вашей дистрибуции, используя custom(ADM). -15-13- 8. После добавления элементов PN и PS отключитесь и вернитесь снова для активизации нового элемента termcap. 9. Используйте следующую команду для печати файла filename на локальном принтере: Ъ2 lprint filename Не касайтесь клавиатуры во время локальной печати; вы не можете выполнять другие задачи на терминале во время печа- ти. 10. Если файл печатается на экране вместо принтера, то соз- данные элементы PS и PN некорректны. Замените элементы правильными кодами. Если файл еще не печатается на принте- ре или терминале, попытайтесь соединить контакты Передачи и Получения данных в кабеле, соединяющем порт AUX термина- ла и принтер. -15-14-  ДОБАВЛЕНИЕ ПРИНТЕРА КАК ТЕРМИНАЛА LOGIN Для добавления прямо присоединенного принтера к системе для использования в качестве терминала login введите: Ъ2 /usr/lib/lpadmin -p Ъ1printername Ъ2-v Ъ1pathname -l sysadmish пользователи выбирают: Printer-->Configure-->Add (Принтеры-->Конфигурирование-->Добавление) Как и ранее pathname - это имя специального файла, предс- тавляющего порт принтера. -l указывает, что принтер будет авто- матически закрыт, когда обслуживание принтера запускается, что- бы позволить пользователям подключиться к системе. Принтер или терминал должны быть вручную открыты перед их использованием для печати. -15-15-  ЗАПУСК И ОСТАНОВ ОБСЛУЖИВАНИЯ ПЕЧАТИ LP При нормальной работе вы никогда не запускаете или не ос- танавливаете обслуживание печати вручную. Оно автоматически за- пускается каждый раз при запуске операционной системы и завер- шается каждый раз при останове операционной системы. Однако, если вам нужно остановить обслуживание печати без останова опе- рационной системы вы можете сделать это, выполнив процедуру, описанную в следующем разделе. Останов обслуживания принтера прекращает всю печать в те- чении нескольких секунд. Любые запросы на печать, которые не закончили выдачу на печать, печатаются полностью после рестарта обслуживания печати. Конфигурации принтера, формы и фильтры, действующие на момент останова обслуживания принтера восстанав- ливаются после рестарта. Примечание Для ручного запуска и останова обслуживания печати вы должны быть подключены к системе либо как корневой суперпользова- тель, либо как пользователь с авторизацией lp.  Ручной останов обслуживания печати Для ручного останова обслуживания печати введите следующую команду:  /usr/lib/lpshut  sysadmish пользователи выбирают: Printers-->Shedule-->Stop (Принтеры-->Планирование-->Останов) Отображается состояние: Print services stopped (Средства печати остановлены) Вся печать прекращается в течении нескольких секунд. Если вы пытаетесь остановить обслуживание печати, когда оно не вы- полняется, вы увидите сообщение: Print services already stopped (Обслуживание печати уже остановлено) -15-16- Примечание Задания могут передаваться через принтер, который не находит- ся в состоянии online. Если принтер не находится в сoстоянии online или не работает правильно, следует закрыть принтер.  Ручной запуск обслуживания принтера Для ручного рестарта обслуживания принтера введите следую- щую команду:  /usr/lib/lpshed  sysadmsh пользователи выбирают: Printers-->Shedule-->Begin (Принтеры-->Планирование-->Начать) Отображается сообщение: Print services started (Запущено обслуживание печати) Может потребоваться минута или две для переустановки кон- фигураций, форм и фильтров принтера перед тем, как сохраненные запросы на печать начнут печататься. Если вы пытаетесь рестар- товать обслуживание печати во время ее выполнения, вы увидите сообщение: Print services already active (Обслуживание печати уже активно) Примечание Вы не должны останавливать обслуживание печати для изменения конфигураций принтера или добавления форм или фильтров. -15-17-  ОТМЕНА ЗАПРОСА ПЕЧАТИ Для отмены запрошенной печати используйте комaнду cancel(C). Когда вы запрашиваете печать, система отображает идентификатор запроса для вашего задания. Например, если вы по- сылаете задание на принтер "лазер" в систему, UNIX отображает идентификатор запроса в следующем виде: +----------------------------------------------------------- | request id is laser-number | где число - это номер, назначенный заданию. Для отмены задания перед началом печати используйте команду: Ъ2 cancel laser-number  sysadmsh пользователи выбирают: Printers-->Request-->Cancel (Принтеры-->Запрос-->Отмена) Печать отменяется. Большая часть систем печатает быстро, так что команда cancel должна использоваться быстро, чтобы быть эффективной. -15-18- АКТИВИЗАЦИЯ И ДЕАКТИВИЗАЦИЯ ПРИНТЕРОВ Команда enable позволяет lpshed печатать файлы на принте- ре. Принтер может принимать запросы для печати после того, как для принтера принята команда accept, но для печати файлов долж- на также быть выдана команда enable. Например для активизации принтера с именем " daisy" введи- те:  enable daisy  sysadmsh пользователи выбирают: Printer-->Shedule-->Enable (Принтеры-->Планирование-->Активизировать) Вы можете деактивизировать принтеры командой disable. Пла- нировщик lpshed не посылает запросы печати на деактивизирован- ные принтеры независимо от их состояния. Возможность -r позво- ляет вам послать сообщение пользователям, объясняющее, почему принтер деактивизирован. Например для деактивизации принтера с именем "лазер" из-за замятия бумаги введите:  disable -r "paper jam" laser Пользователи, запрашивающие состояние "лазера" командой lpstat -plaser получат следующее сообщение: +-------------------------------------------------- |printer laser disabled since Dec 5 10:15 |paper jam | (принтер лазер деактивизирован 5 декабря 10:15) Дополнительная информация об этих двух командах содержится в разделах enable(C) и disable(C) документа User's Reference. -15-19-  ДОБАВЛЕНИЕ ПРИНТЕРА КЛАССУ Часто удобно рассматривать набор принтеров как один класс. Преимущество состоит в том, что пользователь может послать файл на печать члену класса, и обслуживание печатью выбирает первый принтер в классе, который является свободным. Это повышает про- пускную способность, так как принтеры используются максимально эффективно. Классы не нужны, если единственной целью является разре- шить пользователю передать запрос на печать определенному прин- теру. Команда типа lp -Т позволяет пользователю передавать файл и задавать его тип. Первый доступный принтер, который может об- рабатывать этот тип файла, печатает файл. Обслуживание печати не использует фильтр, если это возможно, выбирая принтер, кото- рый может печатать файл напрямую, который первый нуждается в фильтрации. Примечание Смотрите раздел "Фильтры" данной главы для получения дополни- тельной информации о фильтрах. Одним из способов является помещение в класс набора прин- теров, которые будут использоваться в особом порядке. Если у вас имеется высокоскоростной принтер и низкоскоростной принтер, например, вы, вeроятно, захотите, чтобы высокоскоростной прин- тер обрабатывал столько запросов, сколько возможно, а низкоско- ростной принтер использовался, когда другой занят. Так как обс- луживание печати всегда проверяет доступный принтер в том порядке, в каком принтеры добавляются в класс, вы можете доба- вить высокоскоростной принтер в класс перед низкоскоростным принтером, и это позволяет обслуживанию печати направлять зап- росы печати в нужном порядке. Добавьте принтер в класс, используя следующую команду: Ъ2 /usr/lib/lpadmin -p Ъ1printernameЪ2 -c classname  sysadmsh пользователи выбирают: Printers-->Configure-->Modify (Принтеры-->Конфигурирование-->Модификация) Если класс classname еще не существует, он создается. -15-20- Примечание Имена классов и имена принтеров должны быть уникальными. Это позволяет пользователю задавать назначение для запроса печати не зная, относится ли оно к классу принтеров или к отдельному принтеру. Таким образом вы не можете иметь класс и принтер с одним названием. Пока вы не добавили принтер к классу, он не принадлежит ни к одному из них. -15-21-  ЗАДАНИЕ ПО УМОЛЧАНИЮ СИСТЕМНОГО НАЗНАЧЕНИЯ Вы можете определить принтер или класс, используемый для печати файла, когда пользователь не запросил явно некоторое назначение и не задал переменную оболочки LPDEST. Принтер или класс должны уже существовать. Задайте принтеру или классу назначение по умолчанию вводом следующей команды: Ъ2 /usr/lib/lpadmin -d printername или classname sysadmsh пользователи выбирают: Printers-->Configure-->Default (Принтеры-->Конфигурирование-->По умолчанию) Если вы позднее решили, что не должно быть назначения по умолчанию, введите нулевое printername или classname, как в следующей команде:  /usr/lib/lpadmin -d sysadmsh пользователи выбирают: Printers-->Configure-->Default (Принтеры-->Конфигурирование-->По умолчанию) Если вы не задали назначение по умолчанию, то его не бу- дет. Пользователи должны явно именовать принтер или класс в каждом запросе печати, или они должны установить в переменной оболочки LPDEST имя назначения. Для оболочки С:  setenv LPDEST=printer Для оболочки Bourne:  LPDEST=printer; export LPDEST -15-22-  МОНТИРОВАНИЕ ФОРМЫ ИЛИ ПЕЧАТАЮЩЕГО МЕХАНИЗМА Примечание Смотрите раздел "Формы" данной главы для получения информации о препринтных формах. Перед тем, как обслуживание печати начинает печатать фай- лы, которым необходима препринтная форма или печатающий меха- низм, вы должны смонтировать их для принтера. Если средство предупреждения установлено для формы или печатающего механизма, то вы будете извещены, когда достаточное количество запросов печати становится в очередь на монтирование. Когда вы монтируете форму, то вы можете захотеть убедить- ся, что она установлена правильно. Если для формы зарегистриро- ван образец выравнивания, вы можете запросить повторную печать до тех пор, пока вы не настроите принтер так, чтобы образец вы- равнивания выглядел корректно. Монтирование формы или печатающего механизма включает пер- воначальную ее загрузку в принтер с последующим извещением обс- луживания печати о монтировании. Так как трудно делать это для принтера, печатающего в настоящий момент, и так как обслужива- ние печати продолжает печатать файлы, которым не нужна форма на принтере, то вам вероятно необходимо сначала деактивизировать принтер. Таким образом правильная процедура выглядит следующим образом: 1. Деактивизация принтера с помощью команды disable. 2. Монтирование новой формы или печатающего механизма, как это описано позднее в данном разделе. 3. Повторная активизация принтера с помощью команды enable. (Команды disable и enable описаны ранее в разделе "Активи- зация и деактивизация принтеров" данной главы). -15-23- После загрузки новой формы или печатающего механизма в принтер введите следующую команду для запроса у обслуживания печати монтирования. (Эта команда показана на двух строках для простоты чтения: она должна вводиться как одна строка). Ъ2 /usr/lib/lpadmin -p Ъ1printernameЪ2 -M -S print-wheelname -f Ъ1formname -a -o filebreak sysadmsh пользователи выбирают: Printers-->Auxiliary-->PPforms-->Configure (Принтеры-->Вспомогательный-->РРформы-->Конфигурация) Пропустите -S print-wheelname, если вы монтируете только форму или пропустите Ъ2-f Ъ1formname -a -o filebreak, если вы мон- тируете только печатающий механизм. Если вы монтируете форму, у вас запрашивается нажатие кла- виши <Возврат> перед тем, как печатается каждая копия образца выравнивания. После печати образца вы можете настроить принтер и снова нажать клавишу возврата. Если образец выравнивания не зарегист- рирован, у вас не запрашивается нажатие клавиши. Вы можете от- менить возможности -а и -о filebreak, если вы не хотите иметь дело с образцом выравнивания. Возможность -о filebreak запрашивает у обслуживания печати LP добавление formfeed после каждой копии образца выравнивания. Действительная управляющая последовательность, используемая для formfeed, зависит от используемого принтера и получается из ба- зы данных terminfo. Если образец выравнивания уже включает по- дачу формы, опустите возможность -о filebreak. Если вы хотите размонтировать форму или печатающий меха- низм, используйте следующую команду: /usr/lib/lpadmin -p Ъ1printername -M -S none -f none  sysadmsh пользователи выбирают: Printers-->Auxiliary-->PPforms-->Remove (Принтеры-->Вспомогательный-->РРформы-->Удаление) Опустите -S none, если вы только хотите размонтировать форму; в противном случае опустите -f none, если вы только хо- тите размонтировать печатающий механизм. Пока вы монтируете форму на принтере, посылаются только запросы печати, не требующие форму. В противном случае пока вы монтируете печатающий механизм на принтере, пересылаются только запросы печати, не требующие отдельного печатающего механизма. -15-24-  УДАЛЕНИЕ ПРИНТЕРА ИЛИ КЛАССА Вы можете удалить принтер или класс, если отсутствуют жду- щие запросы печати. Если имеются ждущие запросы, вы должны сна- чала переслать их на другой принтер или класс, используя коман- ду lpmove или удалить их, используя команду cancel. Удаление последнего оставшегося принтера из класса автома- тически удаляет весь класс. Однако, удаление класса не приводит к удалению принтеров, которые были элементами этого класса. Ес- ли удаляемый принтер или класс являются также по умолчанию сис- темным назначением, то у системы более нет принимаемого по умол- чанию назначения. Для удаления принтера или класса введите следующую коман- ду: Ъ2 /usr/lib/lpadmin -p printername или classname  sysadmsh пользователи выбирают: Printers-->Configure-->Remove (Принтеры-->Конфигурирование-->Удаление) Если все, что вы хотите - это удаление принтера из класса, а не удаление принтера, введите следующую команду: Ъ2 /usr/lib/lpadmin -p Ъ1printername Ъ2-r classname  sysadmsh пользователи выбирают: Printers-->Configure-->Modify (Принтеры-->Конфигурирование-->Модификация) -15-25-  УПРАВЛЕНИЕ ЗАГРУЗКОЙ СИСТЕМЫ Вам может потребоваться остановить прием запросов печати для принтера или переслать запросы печати с одного принтера на другой. Имеются различные причины для этого, такие как следую- щие: - принтер нуждается в периодическом сопровождении; - принтер сломался; - принтер удален; - вы изменили конфигурацию так, что принтер может исполь- зоваться по-другому; - слишком много больших запросов принтера поставлено в очередь к одному принтеру и должны быть распределены. Если вы собираетесь произвести большое изменение в способе использования принтера, таком, например, как останов его воз- можности обработки определенной формы, изменение печатающего механизма, доступного для принтера, запрет использования прин- тера некоторыми людьми, то запросы печати, стоящие в очереди к принтеру, должны быть пересланы или отменены. Обслуживание пе- чати пытается найти альтернативные принтеры, но только в слу- чае, если пользователь не выбирает используемый принтер. Такие запросы не пересылаются автоматически; если вы не пересылаете их, то обслуживание печати отменяет их. Если вы решили, что принтер следует вывести из системы, его конфигурацию следует изменить или, что он слишком загружен, то вы можете переслать запросы печати с него и отвергнуть до- полнительные запросы. Используйте для этого команды lpmove и reject. Если вы не отвергаете запросы принтера, вы можете позд- нее принять запросы с помощью команды accept.  Отказ от запросов для принтера или класса Для останова принятия новых запросов для принтера или класса принтеров введите следующую команду: Ъ2 /usr/lib/reject -r "reason" printername или classname sysadmsh пользователи выбирают: Printer-->Shedule-->Reject (Принтеры-->Планирование-->Отказ) Вы можете отвергнуть запросы для нескольких принтеров или классов одной командой, перечислив их имена в одной строке, разделив имена пробелами. -15-26- reason (причина) отображается, когда кто-то пытается печатать файл на принтере. Вы можете отменить это (и -r) если не хотите получить причину. Хотя команда reject останавливает принятие новых запросов печати, она не пересылает или отменяет какие-ли- бо запросы, стоящие в настоящее время в очереди к принтеру. Они продолжают печататься, пока принтер активизирован.  Принятие запросов для принтера или класса Команда accept позволяет принтерам или классам принтеров принимать запросы печати, сделанные командой lp. Вы можете раз- решить принтеру прием запросов после того, как он правильно конфигурирован. После того, как условие, ведущее к отмене запросов, скор- ректировано или изменено, введите следующую команду для запуска новых запросов: Ъ2 /usr/lib/accept printername или classname  sysadmsh пользователи выбирают: Printer-->Shedule-->Accept (Принтеры-->Планирование-->Прием) Снова вы можете принять запросы для нескольких принтеров или классов в одной команде, перечислив их имена в одной стро- ке. Вы всегда должны использовать команду accept для нового принтера или класса после их добавления, так как обслуживание печати первоначально не принимает запросы для новых принтеров или классов.  Пересылка запросов на другой принтер Если вы должны пересылать запросы с одного принтера или класса на другой, введите одну из следующих команд: Ъ2 /usr/lib/lpmove request-id printername Ъ2 /usr/lib/lpmove printername1 printername2  sysadmsh пользователи выбирают: Printer-->Request-->Move (Принтеры-->Запрос-->Пересылка) -15-26а- Вы можете получить более одного идентификатора запроса пе- ред именем принтера в первой команде. Первая команда пересылает перечисленные запросы на именованный принтер. Последняя команда пересылает все запросы, стоящие в очереди,к первому принтеру, на второй принтер. Когда используется последняя команда, обслу- живание принтера также не принимает более запросы для первого принтера (Это имеет тот же эффект, что и команда reject). -15-27-  Примеры Приводится несколько примеров того, как вы можете исполь- зовать команды lpmove, accept и reject: Пример 1 Вы решили изменить ленту на принтере lp1 и выполнить неко- торое предупредительное обслуживание. Вы хотите переслать все запросы для принтера lp1 на принтер lp2. После пересылки запро- сов обслуживание печати не принимает более запросы для lp1 (это имеет тот же эффект, что и команда reject lp1,выданная после команды lpmove).  /usr/lib/lpmove lp1 lp2 Теперь вы можете деактивизировать принтер и запустить ра- боту на нем. После завершения вы можете вернуть его в систему:  /usr/lib/accept lp1 В этой точке, если вы деактивизировали принтер, вам следу- ет повторно активизировать его. Смотрите раздел "Активизирова- ние и деактивизирование принтеров" данной главы. Пример 2 Вы заметили, что кто-то поставил в очередь несколько боль- ших файлов для печати на принтер laser1. В это время принтер laser2 простаивает, так как очередь запросов к нему отсутству- ет. Вы пошлете два небольших запроса laser1-23 и laser1-46 на laser2 и откажетесь от любых новых запросов для laser1 на это время.  /usr/lib/lpmove laser1-23 laser1-46 laser2 /usr/lib/reject -r "too busy--will reopen late" (слишком велик - переоткройте позднее)  laser1 -15-28- Пример 3 Вы хотите предотвратить направление запросов печати на принтер 4 из-за ремонта:  /usr/lib/reject -r "printer4 needs repair" printer4 (принтер4 нуждается в ремонте) Пользователь, запрашивающий печать файла на принтере4, по- лучает следующее сообщение: +----------------------------------------------------------- | lp: can not accept requests for destination "printer4" | (не может получить запросы по назначению "принтер4") | --printer printer4 needs repair | (принтер принтер4 нуждается в ремонте) Для определения состояния приема назначений печати введите:  lpstat -a -15-29-  УПРАВЛЕНИЕ ПРИОРИТЕТАМИ ОЧЕРЕДЕЙ Обеспечение печати предоставляет простой механизм приори- тетов, который пользователи могут использовать для настройки положения запроса печати в очереди. Каждому запросу печати мо- жет присваиваться уровень приоритета лицом, которое занимается этим; это число в диапазоне от 0 до 39, причем меньшие числа указывают на более высокий уровень приоритета. Запросы с более высоким уровнем приоритета (меньшие числа) помещаются впереди запросов с низким приоритетом (большие числа). Таким образом, если вы решили, что запрос печати имеет слишком низкий приоритет, вы можете установить более высокий приоритет (меньшее значение), когда назначаете файл для печати. Если вы решили, что запрос печати имеет слишком высокий приори- тет, вы можете задать более низкий приоритет (большее значение) при назначении файла для печати. Схема приоритета просто не работает, если нет контроля над тем, насколько высокий приоритет может быть установлен. Вы мо- жете определить следующие характеристики этой схемы: - каждому пользователю может быть назначен предел приори- тета. Никто не может назначить запросу печати приоритет более высокий, чем предел, хотя запросу может быть назна- чен более низкий приоритет. - предел приоритета по умолчанию может быть назначен для баланса пользователей, которым неназначен персональный приоритет. - может быть установлен приоритет по умолчанию. Это прио- ритет, присвоенный запросам печати, которым пользователь не назначил приоритет. Установив характеристики в соответствии с потребностями вы можете предотвратить влияние низкоприоритетных задач печати (таких, как обычная печать большинства пользователей) на высо- коприоритетные задачи печати (такие, как печать проверки доку- ментов учетным персоналом). Вы можете обнаружить, что вам необходимо напечатать неко- торый запрос печати перед другими, возможно даже, что он должен предшествовать печатаемым в настоящее время запросам. Вы должны с помощью средств печати передать запрос на немедленную обра- ботку и задержать другие запросы печати. Это позволяет печатать нужный запрос и задерживает печать текущего запроса до его восстановления. -15-29а- Команда lpusers позволяет назначить как пределы приоритета для пользователей, так и приоритеты по умолчанию. Кроме того, вы можете использовать команды Ъ2lp -i Ъ1request-id -H hold и lp -i request-id -H immediate для помещения запроса в задержанное состояние или пересылки его для немедленной печати соответс- твенно. Эти команды обсуждаются подробно позднее. -15-30-  Установка пределов приоритета Для установки предела приоритета пользователя введите сле- дующую команду: Ъ2 /usr/lib/lpusers -q Ъ1priority-level Ъ2-u username Вы можете установить предел для группы пользователей пере- числением их имен после возможности -u. Имена разделяются запя- той или пробелом (заключая список в кавычки, если вы используе- те пробел). Уровень приоритета - это число от 0 до 39. Как указано ранее, чем меньше число, тем выше приоритет, или, в данном случае, предел приоритета. Если вы хотите задать предел приоритета для всех других пользователей, введите следующую команду: Ъ2 /usr/lib/lpusers -q priority-level  sysadmsh пользователи выбирают: Printers-->Priorities-->Default (Принтеры-->Приоритеты-->По умолчанию) При этом устанавливается предел по умолчанию, значение по умолчанию относится к тем пользователям, которым не задан лич- ный предел с использованием рассмотренной ранее команды lpusers. Если вы позднее решили, что кто-то должен иметь другой предел приоритета, введите повторно первую команду, указанную выше, с новым пределом. Если вы решили, что кто-то с личным пределом должен иметь предел по умолчанию, введите следующую команду: Ъ2 /usr/lib/lpusers -u username  sysadmsh пользователи выбирают: Printers-->Priorities-->Remove