Диагностика вашего сервера SAMBA
---------------------------------------------------------------
Оригинал этого текста расположен на странице
t37.nevod.perm.su/linux/
---------------------------------------------------------------
Сисадминам Linux'a которых достал
английский - посвящается.
# Перевод Copyright(C) by Kosta Kudrin
# cola@tcsb.perm.su aka 2:5054/69@fidonet
# Данный текст является переводом файла DIAGNOSIS из
# пакета samba-1.9.16p11
#
ДИАГНОСТИКА ВАШЕГО СЕРВЕРА SAMBA.
============================
Этот файл содержит список тестов , которые вы можете использовать при
тестировании вашего сервера Samba. Он также сообщает вам какие могут быть
встречены проблемы на каждом из этих шагов. Если все шаги пройдены успешно
то похоже все работает прекрасно. Вы должны провести все эти тесты в том
порядке, в котором они приведены.
I have tried to carefully choose them so later tests only use capabiliн
ties verified in the earlier tests.
Я буду рад добовлениям к этим тестам. Пожалуйста тогда пишите мне на
адрес samba-bugs@samba.anu.edu.au
Если вы посылаете мне сообщение , говоря "это не работает", и вы не
следовали процедуре тестирования , то вы не должны удивляться если я
проигнорирую ваше сообщение.
-----------
Во всех тестах я поредполагаю что вы имеете сервер Samba назваемый
BIGSERVER и клиентскую рабочую станцию (PC) называемую ACLIENT. Я так же
предполагаю, что рабочая станция работает под управленияем "Windows для
рабочих групп" с новой копией tcp/ip стека для windows. Я так же предпологаю
что вы знаете имя доступных для всех ресурсов в вашем smb.conf файле. Я
также предполагаю , что ресурс доступный для всех называется "tmp". Вы
можете добавить этот ресурс в вашу сеть , записам в файл smb.conf следующую
информацию:
[tmp]
comment = temporary files
path = /tmp
read only = yes
ЭТИ ТЕСТЫ ПРЕДПОЛАГАЮТ ЧТО ВЫ ИСПОЛЬЗУЕТЕ ВЕРСИЮ SAMBA 1.9.16 ИЛИ БОЛЕЕ
ПОЗДНЮЮ. НЕКОТОРЫЕ КОМАНДЫ НЕ СУЩЕСТВУЮТ В БОЛЕЕ РАННИХ ВЕРСИЯХ.
-------
Выполните команду "testparm". Если вы получите какое-либо сообщение об
ошибке, то в вашем файле конфигурации smb.conf какаято строка записана не
верно.
-------
Выполните команду "ping BIGSERVER" с вашей рабочей станции и "ping
ACLIENT" с unix машины , на которую предпологается ставить samba. Если вы не
получаете правильный отклик , то ваше програмное обеспечение TCP/IP не
коректно инсталировано или настроенно.
Заметье , что вам необходимо будет запустить на клиентской рабочей
станции "dos окно" в window для выполнения команды ping.
Если вы получаете сообщение "host not found" ("хост не найден") или
похожее , то ваш DNS сервер не правильно настроен , или не коректно
установлен файл /etc/hosts.
It is possible to
run samba without DNS entries for the server and client, но я предполагаю
что вы имеете коректно установленную информацию для остальных тестов.
-------
Выполните на unix машине команду "smbclient -L BIGSERVER" . Вы должы
получить список доступных ресурсов. Если вы получите сообщение об ошибке
содержащее строку "Bad password" , то вероятно вы имеете или не коректные
строки "hosts allow", "hosts deny" или строку "valid users" в вашем файле
конфигурации smb.conf, или ваше имя пользователя не правильно. Проверте ,
что ваше имя правильно используя "testparm" и временно удалите все строки с
"hosts allow", "hosts deny", "valid users" или с "invalid users" . Если вы
получите сообщение "connection refused" , то smbd сервер возможно не
запущен. Если вы запускаете его из inetd.conf , то возможно что этот файл
был некоректно отредактирован. Если вы инсталировали Samba как демона ,то
проверте что он действительно работает. Так же с помощью команды "netstat
-a" проверте что netbios-ssn порт находится в списке LISTEN.
Если вы получаете сообщение "session request failed" (запрос на сесию
не верен) , то сервер не принимает ваш запрос на соединение. Если сервер
сообщает вам "your server software is being unfriendly" (ваше ПО не
дружественно) ,то это вероятно потому , что вы запускаете smbd с неверными
параметрами, или имеете какие-то проблемы при инициализации samba . С
помощью программы "testparm" проверте файл конфигурации smb.conf , а так же
наличие каталогов ,в которых samba открывает lock и log файлы. Выше
приведенные сообщения об ошибках могут выдавться и по следующим причинам:
возможно уже какой-нибудь деамон занимает порт 139 (возможно smbd запущен
уже из inetd.conf), или что-либо напоминающее Digital's Pathworks. Проверте
ваш ined.conf файл перед попыткой вновь запустить smbd деамона.
-------
Выполните команду "nmblookup -B BIGSERVER __SAMBA__". Вы должны
получить назад IP адрес вашего Samba сервера.Если вы его не получаете значит
nmbd некоректно инсталирован. Проверте ваш ined.conf если вы запускаете nmbd
из него, или что деамон запущен и имеет в списке портов порт 137. Одной из
общих проблем является то , что файл ined.conf не может содержеть в
командной строке большое число параметров. Если в вашем случае это
действительно так , то просто создайте скрипт-файл ,который содержит
правильные параметры и запустите иго из ined.conf.
-------
Выполните команду "nmblookup -B ACLIENT '*'"
В ответ вы должны получить IP адрес вышей PC машины. Если вы их не
получаете значит ПО клиентской части инсталлированно некоректно , или не
запущено , или вы имете неправильное имя PC.
-------
Выполните команду "nmblookup -d 2 '*'"
В этот раз мы пытаемся сделать то же самое что и в предыдущем тесте ,
но на этот раз посылаем broadcast сообщение на все адреса. Число Netн
bios/TCPIP хостов в сети должно быть получено в ответ, однако Samba может не
уловить в короткий промежуток времени все отвечающие хосты. Если вы не
получаете похожий результат как и впредыдущем тесте ,то nmblookup не
коректно получает broadcast адрес через свой автоматический механизм. В
этом случае вы должны поэксперементировать с опцией "interfaces" в файле
smb.conf , для того что бы вручную сконфигурировать ваш IP адрес, broadcast
фдрес и сетевую маску (netmask). Если ваш сервер и РС машина находятся не в
одной подсети , то вам необходимо будет использовать опцию -B для установки
broadcast адреса такимже как подсеть на вашем PCs.
TEСT 7:
-------
Выполните команду "smbclient '\\BIGSERVER\TMP'". После чего в должна
получить приглашения на ввод пароля. Вы должны использовать пароль , который
используется для вашего входа в unix. Если вы хотите протестировать другой
account, то добавте в командной строке опцию -U .После того как вы введете
пароль вы должны получитькомандную строку вида "smb>" . Если вы его не
получаете , то смотрите сообщение об ощибке. Если оно говорит "invalid netн
work name" (неправильное сетевое имя) , то служба "tmp" некоректно
установлена в вашем файле конфигурации smb.conf. Если оно говорит "bad passн
word" (неверный пароль) , то возможно что :
- Вы имеете shadow пароль (или некоторую другую систему паролей), но при
компиляуии samba эта опция была опущена.
- ваша конфигурация "valid users" некоректна.
- вы вводили парол как вверхнем так и внижнем регистрах ,но при этом
имеете опцию "password level" установленную в недостаточно высокий уровень.
- параметр "path =" в файле конфигурации smb.conf задан неверно. Поверте
его спомощью программы testparm.
- Вы разрешили шифрование пароля , но не открыли SMB зашифрованный файл
паролей.
Присоеденившись к серверу вы можете попробовать команды "dir" "get"
"put" и другие. Наберите "help <команда>" для получения большей информации .
Вы должны специально проверить что свободное дисковое пространство
показывается верно после выполнения команды "dir".
-------
На вашем РС компьютере выполните команду "net view \\BIGSERVER". Эту
команду необходимо будет выполнить из дос окна window. Вы должны получить
список всех доступных ресурсов на севере. Если вы получаете сообщение "netн
work name not found" (сетевое имя не найдено) или похожую ошибку , то значит
netbios name resolution не работает. В этом случае проблема кроется в nmbd.
Для того что бы преодолет прблему вы должны сделать следующее (вам
необходимо выбрать одно):
- попробовать переустановить the nmbd.
- добавить IP адрес BIGSERVER сервера в окне "wins server" в расширенных
опциях установки tcp/ip (advanced tcp/ip setup on the PC) на вашей РС.
- разршить windows находить имена через DNS в расширенных опциях установки
tcp/ip.
- добавить сервер BIGSERVER в ваш файл lmhosts на PC.
Если вы получаете "invalid network name" или "bad password error" то
вам необходимо провести такие же действия какие были проведены для команды
"smbclient -L" в тесте выше. В особенности проверте что строка "hosts allow"
коректна.
--------
Выполните команду "net use x: \\BIGSERVER\TMP". Вы должы ввести
правельный пароль , после чего вы получите сообщение "command completed sucн
cessfully" (команда выполнена удачно). Если нет ,то тогда ПО на вашем PC
неверно установлено , или ваш файл конфигурации smb.conf неверен. Проверте
что строка "hosts allow" и другие строки в файле smb.conf введены правильно.
Так же возможно что ваш сервер не может работать с тем именем которое
вы имете. Для решения этой проблемы добавте в строку "user = USERNAME" в
секцию [tmp] вашего вайла конфигурации smb.conf, где "USERNAME" есть имя
пользователя (username) соответствующее набранному паролю . Если вы вы
решили проблему , то возможно вым будет необходимо использовать опцию userн
name map.
--------
Из файлМенаджера попробуйте увидеть сервер. Выш samba сервер должен
появится в списке выших локальных групп (local workgroup).Вы должны дважды
щелкнуть мышкой на имени сервераи получить список его доступных ресурсов.
Если вы получаете сообщение "invalid password" (неверный пароль),то вероятно
вы работаете под WinNT is refusing to browse a server that has no encrypted
password capability and is in user level security mode.
----------------------
Тогда попробуте подписаться на mailing list или на соответствующую
ньюс-группу , или воспользуйтесь утилитой tcpdump-smb для решения проблем.
Так же смотрите другие документы, входящие в пакет поставки Samba !
Last-modified: Wed, 03 Feb 1999 19:06:19 GMT