Вход/Регистрация
Сетевые средства 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 = Yes
. При этом Samba будет непосредственно добавлять идентификатор PostScript-кода в начало задания. Получив такие данные, принтер проигнорирует как второй идентификатор PostScript, так и символ <Ctrl+D>. Данное решение хорошо подходит в том случае, если в сети присутствует большое количество Windows-клиентов. Если же вы захотите выводить задания на печать, сгенерированные драйверами другого типа, вам придется формировать вторую очередь, а это приведет к усложнению списка разделяемых объектов.

Совместное использование принтеров, не поддерживающих PostScript

Существуют два способа настройки Samba для работы с принтерами, не поддерживающими PostScript. Первый способ заключается в использовании PostScript-драйвера на клиентской машине и настройке очереди печати Linux для преобразования PostScript-данных в формат, поддерживаемый конкретным принтером. Согласно второму способу, следует установить на клиентском компьютере драйвер, генерирующий данные на языке принтера, а в системе Linux создать очередь без обработки (raw queue). Данные, помещенные в такую очередь, передаются на принтер в неизменном виде. Оба способа имеют свои преимущества и недостатки, и для реализации каждого из них необходимо определенным образом сконфигурировать Samba.

Использование Ghostscript

Предположим, что вам необходимо вывести на принтер, не поддерживающий PostScript, сгенерированные Linux-приложением PostScript-данные. В этом случае система должна быть сконфигурирована так, чтобы данные, предназначенные для печати, обрабатывались программой Ghostscript. Ghostscript

(http://www.cs.wisc.edu/~ghost/
) — это PostScript-интерпретатор, выполняющийся не на принтере, а на компьютере. GNU-версия Ghostscript, ориентированная на работу с различными типами принтеров, поставляется в составе большинства дистрибутивных пакетов Linux. Если какой-то из принтеров не поддерживается данной реализацией Ghostscript, можно применить специальные драйверы либо воспользоваться более современным продуктом Ghostscript производства Aladdin. Информацию о совместимости различных принтеров с интерпретаторами Ghostscript можно найти, обратившись по адресу
http://www.linuxprinting.org/printer_list.cgi
.

В очереди печати Linux, настроенной для совместной работы с Ghostscript, присутствует фильтр печати, который распознает тип файла. В отличие от фильтра, который используется в очереди, обслуживающей PostScript-принтер, данный фильтр передает данные на вход программы Ghostscript. В этом случае необходимо использовать инструментальные средства настройки принтеров, поставляемые в составе дистрибутивного пакета, а также следовать инструкциям по установке конфигурации фильтра. Настроенная подобным образом очередь работает почти идентично очереди PostScript-принтера (вопросы выбора конфигурации Samba и клиентов для такой очереди рассматривались в предыдущем разделе). Для Windows-клиентов надо выбрать универсальный PostScript-драйвер (для лазерных принтеров хорошо подходят драйверы Apple LaserWriter, а для струйных — драйвер QMS magicolor). Проблема, связанная с появлением в составе задания на печать символа <Ctrl+D>, решается так же, как и при использовании PostScript-принтеров.

Некоторые PostScript-драйверы в системе Windows включают в состав PostScript-файлов дополнительные команды, предназначенные для вывода информации на встроенные дисплеи принтеров. Такие команды часто приводят к появлению дополнительных страниц выходных данных с сообщениями типа

%% [ LastPage ] %%
. Если вы встретитесь с подобной проблемой, решить ее можно, сменив драйвер в системе Windows. Существует и другое решение. Вам надо найти файл, из которого вызывается интерпретатор Ghostscript, и добавить в строку, содержащую команду
gs
, последовательность символов
>/dev/null
. В результате сообщения с используемого в обычных условиях выходного устройства Ghostscript будут перенаправлены в файл
/dev/null
. В системе Caldera таким файлом является
/var/spool/lpd/имя_очереди/printfilter
. В Red Hat, Mandrake и TurboLinux используется файл
/usr/lib/rhs/rhs-printfilters/ps-to-printer.fpi
.

Создание очереди, не обрабатывающей PostScript-данные

Если вы хотите использовать на клиентской машине драйвер, генерирующий информацию в формате, отличном от PostScript, вам надо создать в системе Linux очередь принтера, в которой не предпринимались бы попытки модифицировать данные, переданные на печать. Некоторые фильтры Linux распознают ряд языков и передают соответствующие данные принтеру в неизменном виде, поэтому не исключено, что вам удастся использовать обычную очередь печати. Если же задания, помещенные в такую очередь, исчезают или выводятся в искаженном виде, вам придется создать очередь без обработки (raw queue).

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

/etc/printcap
(при условии, что на вашем компьютере используется система печати BSD или LPRng). В частности, вам надо удалить из описания очереди строку
if=
либо задать пустое значение
if
. Эта строка определяет фильтр печати Linux, и ее удаление приведет к тому, что задание будет передаваться из очереди на принтер в неизменном виде. Пример описания очереди приведен ниже.

  • Читать дальше
  • 1
  • ...
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: