Чтение онлайн

ЖАНРЫ

Сетевые средства Linux

Смит Родерик В.

Шрифт:

Еще одно различие между вариантами поддержки принтеров, не обрабатывающих PostScript-данные, связано с качеством выходных данных. Используя Ghostscript, вы полагаетесь на реализованные в этом продукте средства генерации изображений. Чаще всего Ghostscript хорошо справляется с этой задачей, но в некоторых случаях драйверы целевых принтеров генерируют изображения гораздо лучшего качества. В особенности это бывает заметно при работе с последними моделями струйных принтеров. Некоторые принтеры вовсе не поддерживаются Ghostscript; для такого устройства возможна лишь одна конфигурация, предполагающая использование драйвера этого принтера на стороне клиента и очереди без обработки в системе Linux. Бывают ситуации, в которых интерпретатор Ghostscript предпочтительнее драйвера целевого принтера. Это случается при работе с приложениями, непосредственно ориентированными на работу с PostScript-принтерами (например, пакетами, предназначенными для организации настольных издательских систем), или при выводе на печать файлов EPS (Encapsulated PostScript).

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

С проблемой качества изображения непосредственно связана проблема обеспечения необходимого уровня гибкости при работе с драйверами. Используя Ghostscript, вы устанавливаете разрешение и другие параметры принтера с помощью опций интерпретатора. В системе Linux эти опции обычно задаются при создании очереди. Для того чтобы выводить данные с различным разрешением, необходимо сформировать несколько очередей и переключаться между ними. Если на клиентской машине установлен драйвер целевого принтера, пользователь может выбирать разрешение и управлять другими характеристиками печати с помощью опций этого драйвера. Так, например, организуя работу со струйными принтерами, гораздо удобнее устанавливать драйверы этих принтеров на стороне клиента.

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

Сценарии Samba

Одна из самых привлекательных особенностей Samba — возможность выполнения сценариев. Вы можете задавать команды, которые будут выполнены при наступлении определенных событий. Благодаря поддержке сценариев Samba можно использовать для решения задач, непосредственно не относящихся к совместному использованию файлов и принтеров. В начале данного раздела мы обсудим сценарии

preexec
и
postexec
и псевдопринтеры, а в заключение рассмотрим примеры использования этих средств.

Сценарии

preexec
и
postexec

Samba поддерживает параметры

preexec
и
postexec
, которые позволяют выполнять некоторые команды при регистрации пользователя и завершении его работы с разделяемым объектом. В качестве значения параметра
preexec
задаются команды, которые должны быть выполнены при регистрации пользователя, соответственно команда, указанная как значение
postexec
, выполняется при завершении работы пользователя с объектом. Например, если вы хотите, чтобы при обращении к разделяемому объекту сервер Samba передавал почтовое сообщение по адресу
billy@harding.threeroomco.com
, вы должны включить в определение этого объекта следующее выражение:

preexec = mail -s "Share being used" \

 billy@harding.threeroomco.com

Если пользователь зарегистрируется для работы с объектом, Samba пошлет от его имени сообщение по адресу

billy@harding.threeroomco.com
. В поле
Subject
сообщения будет включена строка "
Share being used
", а по адресу отправителя получатель сможет выяснить, кто из пользователей работал с объектом.

Аналогично действует параметр

postexec
, но команда, заданная в качестве его значения, выполняется после окончания работы с объектом. Зная особенности работы Windows-клиентов с разделяемыми объектами SMB/CIFS, можно сделать вывод, что команда не будет выполнена сразу же после того, как пользователь закроет окно, открытое с помощью Network Neighborhood или My Network Places, но через некоторое время это обязательно произойдет.

Разновидностями параметров

preexec
и
postexec
являются параметры
root preexec
и
root postexec
. Отличаются они лишь тем, что команды, заданные в качестве значений
root preexec
и
root postexec
, выполняются от имени пользователя
root
. Таким образом, можно задавать команды, для выполнения которых требуются специальные привилегии. Используя эти параметры, следует соблюдать осторожность. Если вы допустите ошибку, у вас могут возникнуть проблемы, связанные с безопасностью системы.

При выполнении сценариев сервер Samba может обрабатывать переменные, перечисленные

в табл. 7.1. Эти переменные позволяют настроить сценарии
preexec
и
postexec
для работы с конкретными пользователями, клиентами, операционными системами, установленными на клиентских компьютерах, и т.д. (Некоторые из переменных, представленных в табл. 7.1, специально предназначены для использования в разделяемых объектах принтеров.)

Таблица 7.1. Переменные, доступные в системе Samba

Переменная Назначение
%a
Операционная система на клиентском компьютере. Возможные значения: OS2 (OS/2), Samba, UNKNOWN, WfWg (DOS или Windows for Workgroups), Win2K, Win95 (Windows 95 или 98) и WinNT
%d
Идентификатор процесса сервера
%g
Основная группа, к которой относится пользователь, указанный в переменной
%u
%G
Основная группа, к которой относится пользователь, указанный в переменной
%U
%h
Доменное имя сервера (в домене TCP/IP)
%H
Рабочий каталог пользователя, информация о котором содержится в переменной
%u
%I
IP-адрес клиента
%j
Номер задания на печать
%L
NetBIOS-имя сервера
%m
NetBIOS-имя клиента
%M
Доменное имя клиента (в домене TCP/IP)
%N
Сервер NIS
%p
Путь к каталогу, связанному с разделяемым объектом, используемый при автомонтировании
%P
Путь к каталогу, связанному с разделяемым объектом
%R
Уровень протокола SMB/CIFS. Возможные значения: CORE, COREPLUS, LANMAN1, LANMAN2 и NT1
%s
Имя файла, переданного разделяемому объекту принтера
%S
Имя разделяемого объекта
%T
Текущая дата и время
%u
Эффективное имя пользователя UNIX
%U
Имя пользователя, зарегистрированного в системе UNIX (может не совпадать с именем, хранящимся в переменной
%u
)
%v
Номер версии Samba

Параметры

preexec
и
postexec
в основном предназначены для того, чтобы задавать команды, подготавливающие разделяемые объекты к использованию. Так, например, если есть опасность, что пользователь, работающий в системе Windows, по ошибке удалит конфигурационный файл Linux, сценарий
preexec
можно использовать для создания резервной копии этого файла. Кроме того, параметры
preexec
и
postexec
применяются для решения самых разнообразных задач; некоторые из них описаны ниже.

• С помощью сценариев

preexec
и
postexec
можно создавать и удалять символьные ссылки между совместно используемыми каталогами и рабочим каталогом пользователя. (По умолчанию Samba следует символьным ссылкам, но поведение системы можно изменить, установив параметр
follow symlinks = No
.)

• С помощью параметра

preexec
можно монтировать заменяемые носители в устройствах, соответственно сценарии
postexec
могут быть использованы для их размонтирования. Такая возможность очень полезна при работе с гибкими дисками, устройствами чтения компакт-дисков и другим оборудованием.

Поделиться с друзьями: