Windows 95/98 может автоматически устанавливать необходимые драйверы для принтера при первом подключении к серверу Samba. Настройка этой возможности выполняется в три этапа.
Сначала создайте каталог, который будет содержать драйверы принтера, и сделайте его разделяемым. Ниже приведен пример, взятый из документации, входящей в комплект Samba:
[printers]
path-/usr71ocal/samba/printer
public-yes
wr1teable-no
browseable-yes
Затем создайте список драйверов, необходимых для принтера. Начните с файлов msprlnt. 1nf и mspr1nt2.1nf, которые обычно находятся в каталоге c:w1ndows 1nf. Попробуйте найти в этих файлах описание вашего принтера, и если вам это удалось, скопируйте соответствующий файл на Samba-сервер. На Samba-сервере выполните команду make_pr1ntdef, передав ей в качестве параметра имя файла и название принтера, и перенаправьте ее вывод в файл printer.def. Например, чтобы создать файл printer.def для принтера HP LaserJet 4M, введите
make_prlntdef msprlnt.Inf "HP LaserJet 4H" > printer.def
Если вам не удалось найти ваш принтер в одном из inf-файлов, и у вас есть inf-файл от производителя принтера, сделайте то же самое, но вместо msprlnt. 1nf используйте этот файл.
Команда makeprlntdef выводит список необходимых файлов в стандартный поток ошибок. Все эти файлы должны быть скопированы в каталог, который вы создали ранее. Обычно нужные файлы можно найти в каталоге c:w1ndowssystem. Если на вашем Samba-сервере параметр preserve case установлен в значение yes, то имена файлов должны точно совпадать с именами, выведенными командой makeprlntdef (символы должны быть в том же регистре).
Наконец, добавьте в файл smb.conf два новых параметра. Параметр printer def file в разделе [global] должен содержать путь к файлу printer.def, созданному на втором шаге. Параметр printer driver location должен содержаться в описании каждого разделяемого принтера, для которого вы хотите использовать автоматическую установку драйверов. Он указывает, где расположены файлы для установки принтера.
Вся эта процедура очень подробно описана в документе PRINTER_DRIVER.txt, входящем в поставку Samba.



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



Ошибка 86
Указанный сетевой пароль неправилен.-
Ошибка 87
Неверный параметр.
Ошибка 88
В сети произошел сбой при записи.
Ошибка 89
В настоящий момент система не может запустить еще один процесс.
Ошибка 100
Невозможно создать еще один семафор.
Ошибка 101
Исключительный семафор (exclusive semaphore) принадлежит другому процессу.
Ошибка 102
Семафор установлен и не может быть закрыт.
Ошибка 103
Семафор не может быть установлен повторно.
Ошибка 104
Невозможно запросить исключительные семафоры в момент прерывания.
Ошибка 105
Предыдущее владение данным семафором закончилось.
Ошибка 107
Программа остановлена, поскольку не была вставлена альтернативная дискета.
Ошибка 108
Диск используется или заблокирован другим процессом.
Ошибка 109
Канал (pipe) завершился.
Ошибка 110
Система не может открыть указанное устройство или файл.
• Ошибка 111
Слишком длинное имя файла.
Ошибка 112
На диске недостаточно свободного пространства. Ошибка 113
Закончились доступные внутренние идентификаторы файлов.
Ошибка 114
Неверный внутренний идентификатор файла.
Ошибка 117
Прикладная программа выполнила неверный IOCTL-вызов.
Ошибка 118
Значение параметра «проверять при записи» неверно.
Ошибка 119
Система не поддерживает запрошенную команду.
Ошибка 120
Функция корректна только в режиме Windows NT.
Ошибка 121
Закончился тайм-аут для семафора.
Ошибка 122
Область данных, переданная системному вызову, слишком мала.
Ошибка 123
Синтаксис имени файла, каталога или метки тома ошибочен.
Ошибка 124
Уровень системного вызова неверен.
Ошибка 125
Диск не имеет метки тома.
Ошибка 126
Не найден указанный модуль.
Ошибка 127
Не найдена указанная процедура.
Ошибка 128
Нет дочернего процесса, завершения которого можно ожидать.
Ошибка 130
Попытка использовать файловый указатель (handle) на открытый раздел лиска для операции, отличной от «сырого» (raw) ввода/вывода.
Ошибка 131
Попытка установить указатель позиции в файле до начала файла.
Ошибка 132
Невозможно установить указатель позиции в файле для указанного устройства или файла.
Ошибка 133
Команда JOIN или SUBST не может использоваться для диска, который содержит диски, с которыми ранее была выполнена операция JOIN.
Ошибка 134
Команда JOIN или SUBST не может использоваться для диска, с которым ранее была выполнена операция JOIN.
Ошибка 135
Команда JOIN или SUBST не может использоваться для диска, с которым ранее была выполнена операция SUBST.
Ошибка 136
Система попыталась отменить операцию JOIN для диска, с которым она не была произведена.
Ошибка 137
Система попыталась отменить операцию SUBST для диска, с которым она не была произведена.
Ошибка 138
Система попыталась присоединить диск к каталогу на диске, с котором ранее была выполнена операция JOIN.
Ошибка 139
Система попыталась подставить в качестве диска каталог на диске, с котором ранее была выполнена операция SUBST.
Ошибка 140
Система попыталась присоединить диск к каталогу на диске, с котором ранее была выполнена операция SUBST.
Ошибка 141
Система попыталась подставить в качестве диска каталог на диске, с котором ранее была выполнена операция JOIN.
Ошибка 142
В настоящий момент система не может выполнить операцию SUBST или JOIN.
Ошибка 143
Система не может присоединить диск к каталогу или подставить диск в качестве каталога, так как каталог расположен на том же самом диске.
Ошибка 144
Каталог не является подкаталогом корневого каталога. Ошибка 145
Каталог не пуст.



Команда net ver выводит тип и номер версии редиректора рабочей группы (workgroup redirector), используемого данной системой. Команда не поддерживает никаких параметров. Эту команду следует запомнить и использовать на клиентах, использующих устаревшие операционные системы. Прежде чем начать тестировать аппаратное обеспечение, всегда убеждайтесь, что программное обеспечение клиента обновлено до одной из последних версии.



Команда net 1 ocal group выводит список групп или изменяет группы на локальной системе. Команда требует параметра /add:
/add Параметр предназначен для создания локальных групп и/или добавле-
ния d них пользователей
Для того чтобы создать локальную группу, используйте:
net localgroup иия_группы /add
Для того чтобы добавить пользователей в группу:
net localgroup иия_группы имена_пользователей... /add
Полезной возможностью является задание комментария для группы. Формат таков:
net localgroup иия_группы /add /raiment: "Эта группа управляет активами свободного иира.
Параметр /domain позволяет добавлять группы на PDC. Кажется странным, что команда net localgroup может работать с PDC, но это так. Вы можете протестировать изменения в групповой безопасности на локальной системе и затем добавить параметр /domain для переноса изменений на контроллер домена.
Для того чтобы удалить локальную группу, используйте
net localgroup иия_групгш /delete
Для того чтобы удалить пользователей из локальной группы:
net localgroup иня_группы ииена_польэователей... /delete
Опять же, доступен параметр, задающий поле комментария. Формат команды таков:
net localgroup иия_группы /delete /comment: "Эта группа управляет активаии свободного иира."



Команда mask позволяет задать выражение для фильтрации файлов по их именам при рекурсивных операциях с использованием команд mget и input. Маски, указываемые в качестве аргументов команд mget и mput, при рекурсивных операциях используются для фильтрации каталогов по именам (а не файлов).
Выражение, указанное в качестве аргумента команды mask, используется для фильтрации файлов по их именам в этих каталогах. Например, если в команде mget в качестве маски будет указано выражение *1999, а аргумент команды mask — *.xls, то команда mget загрузит на клиент все файлы, соответствующие выражению *.xls, из всех каталогов с именами, заканчивающимися на 1999 (содержащихся в текущем рабочем каталоге), а также из всех их подкаталогов.
По умолчанию маска фильтрации не установлена. После выполнения команды mask значение маски фильтрации остается неизменным до тех пор, пока не будет изменено следующей командой mask. Для того чтобы избежать неожиданностей, устанавливайте маску фильтрации в значение * после использования команды mget или mput.



В FreeBSD/NetBSD вы также можете использовать параметр -S для вывода информации о том, на сколько пакетов не ответил каждый транзитный узел.
dnsdomainname
Команда dnsdomainname выводит имя домена DNS для данной системы. Команда существует только в Linux.
domainname
Команда domainname выводит имя домена NIS для данной системы. Пользователь с правами администратора системы может использовать команду domainname имя, чтобы установить имя домена NIS.



В этом разделе описаны несколько команд, которые вы можете использовать в командной строке для проведения диагностики сетевых проблем.
ping
DOS-команда ping позволяет произвести простейшую проверку наличия сетевого соединения. Простейший синтаксис команды таков:
ping узел_незначения
В качестве узла назначения может использоваться как имя узла, так и его IP-адрес. Если после запуска ping вы видите сообщение Request timed out, это означает, что между локальным клиентом и узлом назначения невозможно установить ТСР/1Р-соединение.
netstat
Команда netstat используется для вывода статистической информации о ТСР-соединениях между клиентом и другими компьютерами. Доступны следующие параметры:
•а Вывести информацию о подключениях со стороны сервера
•е Вывести статистику Ethernet
-п Выводить адреса и номера портов в чистовом виде
•р протокол Вывести информацию о соединениях для указанного протокола; могут
использоваться значения tcp и udp
-г Вывести таблицу маршрутизации
•s Вывести статистику для каждого протокола
ipconfig
Команда Ipconfig выводит на экран текущие настройки TCP/IP. Параметр /all позволяет получить более подробную информацию.
Существует также второе применение команды Ipconfig. Она позволяет управлять DHCP-арендой, полученной клиентом, а именно — вы можете обновить аренду IP-адреса или отказаться от нее. Для того чтобы отменить аренду IP-адреса, введите
ipconfig release
Для обновления DHCP-аренды полученного клиентом IP-адреса используйте
Ipconfig renew
nslookup
Команда nslookup используется для проверки настройки DNS. При удачном поиске заданного имени команда выводит соответствующий ему IP-адрес, например:
nslookup slashdot.org



Раздел Module config for users and groups позволяет вам указать параметры, используемые при создании и редактировании пользователей и групп:
О Должен ли быть создан файл паролей или же он существует; а также где он находится.
О Файл групп.
О Используются ли теневые пароли, и если да, то где расположен соответствующий файл.
О Используется ли мастер-файл паролей BSD, и если да, то где он расположен.
О Используется ли теневой файл для групп, и если да, то где он расположен.
О Команда, которая должна быть выполнена перед внесением изменений.
О Команда, которая должна быть выполнена после внесения изменений.
О Используемый по умолчанию режим доступа для создаваемых домашних каталогов.
О Минимальный номер (UID) для новых пользователей.
О Минимальный номер (GID) для новых групп.
О Группа, в которую по умолчанию помещаются новые пользователи. О Максимальное количество отображаемых пользователей. О Следует ли сортировать пользователей и группы в алфавитном порядке. О Количество отображаемых предыдущих входов в систему.



Этот раздел выводится только на странице Global Advanced. Вы можете задать в нем глобальные параметры печати. Именно здесь вы можете изменить поведение Samba, чтобы заставить принтеры работать с вашей системой. Вы можете указать используемый тип печати, команды для печати и расположение файла printcap.
load printers
Параметр определяет, будут ли все принтеры, описанные в файле printcap, по умолчанию доступны для просмотра.
Значение по умолчанию:
load printers - Yes
Для того чтобы не показывать ваши принтеры в сетевом окружении, задайте
load printers - No
printcap name
Параметр задает имя файла printcap для вашей системы и имеет приоритет перед именем, указанным при компиляции Samba Корректное значение этого параметра зависит от используемой операционной системы (обратитесь к man-страницам).
Значение по умолчанию:
prlntcap папе - /etc/prtntcap
Например, системы на базе AIX используют файл qconfig:
prlntcap name - /etc/qconfig
printer driver file
Параметр задает расположение файла описания драйвера принтера. Он используется при автоматической установке драйверов принтера на клиентах на базе Windows 95/98. Параметр не работает с NT-клиентами! Файл описания драйвера принтера создается из файла msprlnt.def, расположенного на клиентской системе.
По умолчанию файл printer.def не создается.
Ниже приведен пример, в котором файл printer.def располагается в установочном каталоге Samba:
printer driver file - /usr/local/sanfca/prlnters/drlvers.def
printing
Параметр определяет, как для вашей системы следует трактовать информацию о состоянии службы печати. Значением параметра является стиль печати, используемый операционной системой, под управлением которой работает ваш Samba-сервер. Например, в Solaris 2.5 стиль печати — SYSV. Установленный стиль печати определяет параметры по умолчанию для команд print, lpq, lppause, 1 presume и lprtn. Каждая из этих команд в системах с различными стилями печати ведет себя по-своему.
Данный параметр может быть отдельно установлен для каждого принтера. Поддерживается восемь различных стилей печати:
BSD
А1Х
LPRNG
PLP
SYSV
HPUX
QNX
SOFTQ
Например, чтобы установить стиль печати HPUX, задайте:
printing - HPUX
Для установки стиля печати BSD:
printing - BSD
print command
Параметр задает команду печати, которая должна использоваться для обработки задания на печать после того, как оно будет загружено на сервер. Если вы не зададите команду печати, то задания на печать будут создаваться, но не будут обрабатываться. Имя файла, содержащего задание на печать, автоматически устанавливается Samba-сервером. Команда печати должна передавать файл задания подсистеме печати операционной системы. Если команда печати задана в разделе глобальных параметров, то она будет использоваться для всех разделяемых принтеров, для которых явно не указана другая команда в описании ресурса. Если используемая вами команда печати не удаляет файл задания, то вам потребуется вручную удалять старые файлы заданий.