Table of Contents
メーリングリスト、RFCやドキュメントのような形で、数多くの情報源が存在している。Sambaの 配布物に由来するドキュメントには、ブラウジングのような一般的なSMBのトピックについての 良い説明が含まれている。
SMBネットワーキングにおいて、特定の問題について、何が原因かと言うことが、簡単に 分からないことがよくある。Sambaそれ自身はむしろ役立つ情報を提供するが、いくつかの 例では、snifferを使った方がよいかもしれない。snifferは LANをモニタし、そこに送信されているデータを解析し、画面上に表示するプログラムである。
問題をデバッグするための最も良い診断ツールの1つは、Sambaそれ自身である。動作するときの、
debug levelを、smbdとnmbd両方に指定する、
-d オプション
が使える。smbd, nmbd
とsmb.conf
の
マニュアルページに、デバッギングオプションに関連するより詳細な情報があるので参照すること。
debug level(log level)は1(既定値)から10までを指定できる(100はパスワードデバッグ用)。
別の、デバッギングに便利な方法は、gcc -g
フラグ付きでSambaをコンパイル
することである。これは、バイナリ中にデバッグ情報を埋め込み、動作中の
smbd/nmbd
プロセスにgdb
がアタッチできるようにする。
NTワークステーション向けに、あるsmbd
プロセスにgdb
を
アタッチするためには、最初にワークステーションとの接続を確立する。
LsaEnumTrustedDomains
を生成するのに、ctrl-alt-deleteを
押し、ドメインログオン画面を表示すれば(少なくとも、最初にドメインに参加しておく)
十分である。その後、ワークステーションは開いているコネクションを維持し、smbdプロセスが
走り出す(短い、smbdのアイドルタイムアウトを設定していないと仮定する)。
ctrl-alt-delete
を押してからパスワードを実際に入力するまでの間に、
gdb
をアタッチでき、そのあと継続できる。
調べてみる価値のある便利なSambaのコマンドのいくつかは以下の通り:
$
testparm | more
$
smbclient -L //{サーバのnetbios名}
TcpdumpはSMBをサポートした最初の
UNIX上でのsnifferである。これはコマンドラインユーティリティで、現在、そのSMB
サポートは、ethereal
やtethereal
よりは
若干遅れている。
Etherealは、GUIのsnifferで、UNIX(Gtk)
とWindows両方で使える。EtherealのSMBサポートはとても良い。ethereal
の
使用法の詳細は、良くできているEthereal User Guideを読むこと。
ポート137,138,139,445をリッスン。例えば、キャプチャの開始
画面であるように、port 137, port 138,port 139,か port 445
を
フィルタとして使う。
tethereal
という名前のコンソールバージョンのecherealもある。
Microsoft Windows NT上での同等品は、ネットワークモニタ(Netmonとして知られる)が、 Microsoft Developer Network CD、Windows NTサーバインストールCDとSMSのCD中ににある。 SMSに同梱されているnetmonは任意の2つのコンピュータ間のパケットをダンプできる(すなわち、 ネットワークインタフェースをpromiscuousモードにする)。NTサーバインストールCDに同梱 されているものは、ローカルのNTマシンに直接来るネットワークトラフィックとローカルな サブネットのブロードキャストのみモニタできる。etherealはnetmon形式のファイルを読み書き 出来る事に注意。
NTワークステーション上へのインストールには、多くの手順が必要である。以下は、 Microsoft Windows Workstation 4.0上にMicrosoft Windows NT Server 4.0から持ってきた Netmon V4.00.349をインストールする手順である。この手順はNetmonの、他の Windows NTバージョンからのものと同等である。Microsoft Windows NT Server 4.0 インストールCDとWorkstation 4.0のインストールCDの両方が必要である。
最初に、以下のようにして、NTサーバ上にネットワークモニタツールとエージェント をインストールする必要がある:
-> -> -> -> -> を表示する。
ネットワークモニタツールとエージェントを選択し、 を クリックする。
ネットワークコントロールパネル上の
をクリックする。要求されたならば、Microsoft NT Server 4.0のインストールCDを挿入する。
この時点で、Netmonファイルは%SYSTEMROOT%\System32\netmon\*.*
に
存在すべきである。Netmonがパケットダンプを解析するために必要なDLLを含む
parsers\
と、captures\
という2つのサブ
ディレクトリも同様に存在する。
NT ワークステーション上にNetmonをインストールするためには、ワークステーションインストール CDかr、ネットワークモニタエージェントを最初にインストールする必要がある。
-> -> -> -> -> を表示する。
ネットワークモニタエージェントを選択し、 をクリックする。
ネットワークコントロールパネル上の
を クリックする。要求されたならば、Windows NT Workstation 4.0インストールCDを挿入する。
そうすると、ワークステーション上の%SYSTEMROOT%\System32\netmon
に、
NTサーバ上の%SYSTEMROOT%\System32\netmon
からファイルをコピーし、
使用しているサイトに適切と見なされるアクセス許可を設定する。NetmonをNTマシン上で
動作させるには、管理者権限が必要である。
BDCの動作をScott Merrillがシミュレートしたかについては http://www.skippy.net/linux/smb-howto.htmlを参照(訳注:現存せず)。
古いSMBの仕様については ftp://ftp.microsoft.com/developr/drg/CIFS/というFTPサイトにある(訳注:現存せず)。
Sambaに関連した数多くのメーリングリストがある。
http://samba.orgに移動し、
最も近いミラーサーバを選択し、Support
をクリックする。次に、
Samba-related mailing lists
をクリックする。
Samba TNGに関連する質問は、 http://www.samba-tng.org/にある。 メインストリームのSambaメーリングリストには、Samba-TNGに関連する質問を投稿しない こと。
メーリングリストのどれかに投稿したいのであれば、以下のガイドラインをよく読んでほしい:
いつも覚えておいてほしいのは、開発者はボランティアであるということである。 ある時点までに特定の機能を作る事について、開発者はお金をもらっているわけでも、 保証しているわけでもない。どの予定も“希望的観測”であり、それ以上の ものではない。
常時、どのバージョンのSambaを使っていて、それが動いているOSが何かと言うことを
説明すること。使用しているsmb.conf
の適切なセクションを、少なくともPDCサポートに
影響する[global]
中のオプションは提示すること。
バージョンについては、もしもCVS(訳注:現在はgit)経由でSambaを 入手したならば、最後にチェックアウトした日付を提示すること。
質問を明確に、手短にするよう心がけること。とても長い、複雑な 質問は、それが完全に読まれる前に捨てられてしまう!HTMLエンコードして投稿しないこと。 メーリングリストを購読しているほとんどの人は、それを読まないで捨ててしまう。
もしも、不在時に、“ただいま留守にしております” というような気の利いたメッセージを返しているのであれば、メーリングリストに 返信しないように設定すること。メーリングリストへの自動応答は、このような ネット上での好まれない対応に応対しなければならない、何千もの人々をいらつかせて しまう。
クロスポストしないこと。どのメーリングリストが最適かを調べて投稿し、何が 起きたかを確かめてみること。samba-ntdomとsamba-technical両方に投稿しないこと。 多くの人は、1つ以上のメーリングリストに参加していて、2回以上同じ記事を 見るといらだってくる。他のメーリングリストで、記事を取り扱った方がよいと 考えている誰かは、しばしばその投稿記事を転送してくれている。
おおよそ20でログレベルが設定されて記録されたログファイルを 部分的に含めても良い。ログ全体を送ってはならないが、 エラーメッセージが分かるためのひとまとまりの部分ならばよい。
もしも、完全なNetmonトレース(開始からエラー時点まで)が あるならば、同じように*.CAPファイルを投稿しても良いだろう。
メールにドキュメントを添付する前に熟考すること。投稿記事
本体中に適切な部分を貼り付けることを考えること。Sambaメーリングリストは
とても多くの人に配信している。使用しているsmb.conf
のコピーが、すべての
人に必要だろうか?
Sambaメーリングリストから脱退するには、参加申し込みをしたと同じページ、
http://lists.samba.org
の最も近いミラーに行き、Support
をクリックし、
Samba-related mailing lists
をクリックする。
脱退方法についてメーリングリストに投稿しないこと。(何らかの理由で処理がうまく 行かなかった場合を除いて)上記のアドレスのみを参照すべきである。