принтера. Это случается при работе с приложениями, непосредственно ориентированными на работу с PostScript-принтерами (например, пакетами, предназначенными для организации настольных издательских систем), или при выводе на печать файлов EPS (Encapsulated PostScript). Необходимо заметить, что интерпретатор Ghostscript позволяет обеспечить PostScript-совместимость, затратив для этого минимальные усилия. Преимуществом использования Ghostscript также является тот факт, что данный интерпретатор обеспечивает реальную возможность стандартизировать вывод на печать, т.е. исключает необходимость переключаться между различными принтерами.
С проблемой качества изображения непосредственно связана проблема обеспечения необходимого уровня гибкости при работе с драйверами. Используя Ghostscript, вы устанавливаете разрешение и другие параметры принтера с помощью опций интерпретатора. В системе Linux эти опции обычно задаются при создании очереди. Для того чтобы выводить данные с различным разрешением, необходимо сформировать несколько очередей и переключаться между ними. Если на клиентской машине установлен драйвер целевого принтера, пользователь может выбирать разрешение и управлять другими характеристиками печати с помощью опций этого драйвера. Так, например, организуя работу со струйными принтерами, гораздо удобнее устанавливать драйверы этих принтеров на стороне клиента.
Таким образом, на вопрос о том, следует ли использовать Ghostscript или драйвер целевого принтера, невозможно дать однозначный ответ. Выбирая конфигурацию системы, следует учесть специфику решаемых задач и характеристики вашей сети. При желании вы можете также поэкспериментировать с обеими конфигурациями и на практике определить, какой подход дает лучшие результаты в вашей сети и с вашими принтерами. Скорее всего, вы убедитесь в том, что для одних принтеров целесообразно использовать Ghostscript, а для других лучше установить драйверы этих принтеров на клиентском компьютере.
Сценарии Samba
Одна из самых привлекательных особенностей Samba — возможность выполнения сценариев. Вы можете задавать команды, которые будут выполнены при наступлении определенных событий. Благодаря поддержке сценариев Samba можно использовать для решения задач, непосредственно не относящихся к совместному использованию файлов и принтеров. В начале данного раздела мы обсудим сценарии preexec
и postexec
и псевдопринтеры, а в заключение рассмотрим примеры использования этих средств.
Сценарии preexec
и postexec
Samba поддерживает параметры preexec
и postexec
, которые позволяют выполнять некоторые команды при регистрации пользователя и завершении его работы с разделяемым объектом. В качестве значения параметра preexec
задаются команды, которые должны быть выполнены при регистрации пользователя, соответственно команда, указанная как значение postexec
, выполняется при завершении работы пользователя с объектом. Например, если вы хотите, чтобы при обращении к разделяемому объекту сервер Samba передавал почтовое сообщение по адресу [email protected]
, вы должны включить в определение этого объекта следующее выражение:
preexec = mail -s 'Share being used'
Если пользователь зарегистрируется для работы с объектом, Samba пошлет от его имени сообщение по адресу [email protected]
. В поле 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 | ||