Сетевые средства Linux
Шрифт:
Рис. 7.4. Если наличие <Ctrl+D> приводит к возникновению проблем при выводе документа на принтер в системе Linux, вы можете запретить генерацию этого символа
Вы можете отключить опцию драйвера печати Windows, которая управляет выводом символа <Ctrl+D>. Эту опцию можно найти в диалоговом окне Properties принтера либо в окне, которое отображается после щелчка на кнопке Advanced в этом же окне необходимо сбросить флажок опции Send CTRL+D Before Job. (Опция Send CTRL+D After Job обычно не приводит к возникновению проблем.) Такое решение хорошо подходит в том случае, если вы используете одну очередь для обслуживания PostScript-принтеров и устройств печати, поддерживающих другие языки описания документов. Недостаток подобного подхода состоит в том, что для настройки многочисленных Windows-клиентов
Чтобы разрешить проблему, возникающую из-за наличия в начале задания на печать символа <Ctrl+D>, необходимо установить параметр
Совместное использование принтеров, не поддерживающих PostScript
Существуют два способа настройки Samba для работы с принтерами, не поддерживающими PostScript. Первый способ заключается в использовании PostScript-драйвера на клиентской машине и настройке очереди печати Linux для преобразования PostScript-данных в формат, поддерживаемый конкретным принтером. Согласно второму способу, следует установить на клиентском компьютере драйвер, генерирующий данные на языке принтера, а в системе Linux создать очередь без обработки (raw queue). Данные, помещенные в такую очередь, передаются на принтер в неизменном виде. Оба способа имеют свои преимущества и недостатки, и для реализации каждого из них необходимо определенным образом сконфигурировать Samba.
Предположим, что вам необходимо вывести на принтер, не поддерживающий PostScript, сгенерированные Linux-приложением PostScript-данные. В этом случае система должна быть сконфигурирована так, чтобы данные, предназначенные для печати, обрабатывались программой Ghostscript. Ghostscript
В очереди печати Linux, настроенной для совместной работы с Ghostscript, присутствует фильтр печати, который распознает тип файла. В отличие от фильтра, который используется в очереди, обслуживающей PostScript-принтер, данный фильтр передает данные на вход программы Ghostscript. В этом случае необходимо использовать инструментальные средства настройки принтеров, поставляемые в составе дистрибутивного пакета, а также следовать инструкциям по установке конфигурации фильтра. Настроенная подобным образом очередь работает почти идентично очереди PostScript-принтера (вопросы выбора конфигурации Samba и клиентов для такой очереди рассматривались в предыдущем разделе). Для Windows-клиентов надо выбрать универсальный PostScript-драйвер (для лазерных принтеров хорошо подходят драйверы Apple LaserWriter, а для струйных — драйвер QMS magicolor). Проблема, связанная с появлением в составе задания на печать символа <Ctrl+D>, решается так же, как и при использовании PostScript-принтеров.
Некоторые PostScript-драйверы в системе Windows включают в состав PostScript-файлов дополнительные команды, предназначенные для вывода информации на встроенные дисплеи принтеров. Такие команды часто приводят к появлению дополнительных страниц выходных данных с сообщениями типа
Если
вы хотите использовать на клиентской машине драйвер, генерирующий информацию в формате, отличном от PostScript, вам надо создать в системе Linux очередь принтера, в которой не предпринимались бы попытки модифицировать данные, переданные на печать. Некоторые фильтры Linux распознают ряд языков и передают соответствующие данные принтеру в неизменном виде, поэтому не исключено, что вам удастся использовать обычную очередь печати. Если же задания, помещенные в такую очередь, исчезают или выводятся в искаженном виде, вам придется создать очередь без обработки (raw queue).Для создания очереди без обработки надо сформировать обычную очередь печати, а затем внести изменения в файл
В данном примере указаны три имени принтера:
Определяя разделяемый объект принтера для очереди без обработки, необходимо убедиться, что параметр
Если компьютеру, на котором выполняется сервер Samba, подключен принтер, не поддерживающий PostScript, вам необходимо принять решение о том, нужно ли установить на клиентской машине PostScript-драйвер или драйвер, ориентированный на работу с имеющимся у вас устройством печати. Следует заметить, что рассмотренные выше варианты решения не являются взаимоисключающими, как это кажется на первый взгляд. Вы можете создать две очереди, а если фильтр печати распознает задания, предназначенные для принтера, не поддерживающего PostScript, можно даже обойтись одной очередью печати. (Если вы создадите две очереди Linux, то разделяемый объект
Одно из важных различий между рассмотренными подходами состоит в том, что текст или изображение преобразуется в битовую карту на разных этапах обработки. Рассмотрим вывод на печать документа, содержащего в основном текстовые данные. Если вы используете Ghostscript в системе Linux и PostScript-драйвер на стороне клиента, клиент генерирует текстовый файл. Размеры этого файла относительно невелики, поэтому создание такого файла не создает существенной нагрузки на процессор клиентской машины. Трафик, связанный с передачей этого файла по сети, также невелик. Для обработки такого файла в системе Linux требуется большой объем ресурсов, так как содержащиеся в файле данные должны быть преобразованы в битовую карту. Если на клиентском компьютере установлен драйвер целевого принтера, основную нагрузку по обработке файла будет нести процессор этой машины, поскольку именно на стороне клиента будет осуществляться преобразование в формат битовой карты. Соответственно возрастет трафик сети, потому что размер передаваемого файла увеличится. Нагрузка на процессор компьютера, на котором выполняется сервер Samba, будет небольшой, поскольку основная обработка данных выполняется на стороне клиента. Таким образом, при использовании интерпретатора Ghostscript в работу вовлекается меньше ресурсов клиентской машины и уменьшается трафик сети. Применение драйвера целевого принтера оправдано в тех случаях, когда необходимо уменьшить нагрузку на процессор сервера. При выводе на печать графических файлов разница между различными подходами практически не ощущается, так как размеры файла почти не зависят от того, передается ли он в формате PostScript или в формате целевого принтера.