Таким образом, на вопрос о том, следует ли использовать Ghostscript или драйвер целевого принтера, невозможно дать однозначный ответ. Выбирая конфигурацию системы, следует учесть специфику решаемых задач и характеристики вашей сети. При желании вы можете также поэкспериментировать с обеими конфигурациями и на практике определить, какой подход дает лучшие результаты в вашей сети и с вашими принтерами. Скорее всего, вы убедитесь в том, что для одних принтеров целесообразно использовать Ghostscript, а для других лучше установить драйверы этих принтеров на клиентском компьютере.
Одна из самых привлекательных особенностей 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применяются для решения самых разнообразных задач; некоторые из них описаны ниже.
Читать дальше