## Name

nmbd — NetBIOS over TCP/IP クライアントへの NetBIOS ネームサーバ機能の提供

## Synopsis

`nmbd` [-D] [-F] [-S] [-a] [-i] [-o] [-h] [-V] [-d <debug level>] [-H <lmhosts file>] [-l <log directory>] [-p <port number>] [-s <configuration file>]

## 説明

このプログラムは samba(7) システムの一部である。

`nmbd` は、Windows95/98/Me、 Windows NT、Windows XP や LanManager クライアントなどの SMB/CIFS クライアントによる NetBIOS over TCP/IP のネームサービスのリクエストを認識し、 応答することができるサーバである。 また、Windows の「ネットワークコンピュータ」 で表示されるコンピュータの一覧を 作り出すブラウジングのプロトコルにも対応している。

SMB/CIFS クライアントは、起動時に SMB/CIFS サーバを探索し、 サーバが用いている IP アドレスを確認しようとする。

サービスの中でもとりわけ `nmbd` は、 そのようなリクエストを監視し、自分の NetBIOS 名が指定されたなら、 自身の IP アドレスを返答する。 「自分の NetBIOS 名」は、 既定値では動作しているホストのプライマリDNS 名であるが、 これは `smb.conf` の netbios name によって変更可能である。 このように `nmbd` は、 自分の名前(復数の場合もある)を、 ブロードキャストの問い合わせに対して返答する。nmbd が返す追加の名前を、 smb.conf(5) 設定ファイル中のパラメータで設定することができる。

`nmbd` は、WINS (Windows Internet Name Service) サーバとしても利用できる。 基本的にこれが意味することは、WINS データベースサーバとして、 受け取った名前登録要求からデータベースを構築でき、 またクライアントからの名前の問い合わせに応答することができるということである。

さらに `nmbd` は、WINS proxy として動作でき、 WINS サーバに対して WINS プロトコルで交信することができないクライアントからの、 ブロードキャスト要求を中継することができる。

## オプション

-D

  このパラメータが指定されると、`nmbd` はデーモンとして動作する。 すなわち、自分自身を分離してバックグラウンドで動作し、適切なポートのリクエストを処理する。 既定では、`nmbd` はデーモンとして動作しない。 推奨しないが、nmbd は `inetd` からのメタ・デーモンとしても動作可能である。

-F

  このパラメータを指定すると、 `nmbd` のメインプロセスはデーモン化しなくなる。 つまり、 2 回の `fork(2)` と端末からの切り離しを行なわない。 通常通り接続要求を処理するための子プロセスが生成されるが、 メインプロセスは終了しない。 この動作方式は、 Daniel J. Bernstein 作の `daemontools` パッケージに含まれる `supervise` と `svscan` や、 AIX のプロセスモニターなど、プロセス監視の下で `nmbd` を動作させるのに都合がよい。

-S

  このパラメータが指定されると、`nmbd` は ファイルではなく標準出力にログを出力する。

-i

  このパラメータが指定されると、 サーバがシェルのコマンドライン上から起動されてもサーバはデーモンとはならずに「対話的に」動作する。 このパラメータにより、コマンドラインから起動した際に暗黙的にデーモンモードとなることが抑止される。 また、`-S` パラメータが指定されていたとしても、 `nmbd` は標準出力にログを出力する。

-h|--help

  コマンドラインオプションの要約を表示する。

-H <filename>

  NetBIOS lmhosts ファイルの指定。lmhosts ファイルは、 NetBIOS 名と IP アドレスの組で構成されるリストである。 これは、nmbd サーバによってロードされ、任意の NetBIOS 名を解決する問い合わせのために、 smb.conf(5)中で記述されている、 name resolve order 名前解決メカニズムに従って、サーバが必要とする NetBIOS 名の問い合わせを解決するために使われる。 このファイルの内容は、 `nmbd` が、 任意の名前問い合わせに応答する時には決して使われないことに注意。 このファイルに行を追加すると、 このホストからの NetBIOS 解決にのみ影響する。

  このファイルへの既定値のパス名は、 Samba をビルドする過程でバイナリに埋め込まれる。 共通のデフォルト値は、 `/usr/local/samba/lib/lmhosts`、 `/usr/samba/lib/lmhosts` または `/etc/samba/lmhosts` である。 このファイルの内容の詳細は、 lmhosts(5) マニュアルページを参照のこと。

-V

  プログラムのバージョン番号を表示する。

-s <configuration file>

  サーバーが必要とする詳細な設定を含む設定ファイルを 指定する。このファイルには、サーバーが提供するサービスに関する記述や、 どの printcap ファイルを利用するかといった情報が含まれている。詳細は `smb.conf` を参照のこと。設定ファイルの名前の既定値は、コンパイル時 に決定される。

-l|--log-basename=logdirectory

  ログ/デバッグファイルのファイル名。拡張子として `".progname"` が追加される(例えば log.smbclient, log.smbd,など)。ログファイルはクライアントによって削除されることはない。

-p <UDP port number>

  UDP ポート番号には正の整数を指定する。 このオプションは、`nmbd` が名前問い合わせに返答する、 既定値の UDP ポート番号(通常は137)を変更する。 あなたがどんな場面でも助けを必要としない専門家でない限り、 このオプションを使用してはならない!

## 関連ファイル

`/etc/inetd.conf`

  サーバが `inetd` メタ・デーモン経由で動作しているならば、このファイルは メタ・デーモンのための適切な起動情報を含む必要がある。

`/etc/rc`

  (またはシステムが使う初期化スクリプト)

  サーバをデーモンとして起動させるならば、 このファイルにサーバに応じた適切なスタートアップ 手順を含む必要がある。

`/etc/services`

  サーバを `inetd` メタ・デーモン経由で起動させるなら、このファイルにサービス名 (例えば netbios-ssn)とサービスポート(例えば139)、 プロトコルタイプ(例えば tcp)のマッピングを含んでいなければいけない。

`/usr/local/samba/lib/smb.conf`

  これは、 smb.conf(5) のデフォルトの位置である。 本ファイルのこれ以外の標準的なインストール位置は、 `/usr/samba/lib/smb.conf` と `/etc/samba/smb.conf` である。

  WINS サーバとして動作させるなら (smb.conf(5) マニュアルページの wins support パラメータを参照)、 `nmbd` は、Samba がインストールされた場所の下に作成される `var/locks` ディレクトリ中の `wins.dat` ファイルに WINS データベースを格納する。

  `nmbd` が ブラウズマスタ ( smb.conf(5) マニュアルページの local master パラメータを参照) として動作している場合、 `nmbd` は、Samba がインストールされた場所の下に作成される `var/locks` ディレクトリ中の `browse.dat` ファイルにブラウジングのデータベースを格納する。

## シグナル

`nmbd` プロセスをシャットダウンするために、 SIGKILL(-9) を使用した場合、 名前データベースが整合性の崩れた状態で残ってしまう可能性があるため、 最後の手段として以外には 決して推奨しない。 正しい方法は、SIGTERM(-15) を送り、`nmbd` が自ら終了するまで待つことである。

`nmbd` が SIGHUP を受け取ると、名前の一覧を `/usr/local/samba/var/locks` ディレクトリ (または Samba 自身がインストールされた場所の配下に作成される `var/locks` ディレクトリ)中のファイル `namelist.debug` にダンプする。 同様に nmbd はサーバデータベースを `log.nmb` ファイルにダンプする。

smbcontrol(1) を使うと nmbd のデバッグ・ログ・レベルを上げたり下げたりできる (SIGUSR[1|2] シグナルは Samba 2.2 からもはや使用されていない)。 これにより、通常は低いログ・レベルで動作させた状態で、 一時的な問題を診断することができる。

## バージョン

この man ページは、Samba システムのバージョン 3 用になっている。

## 関連項目

inetd(8)、 smbd(8)、 smb.conf(5)、 smbclient(1)、 testparm(1)、 testprns(1)、 Internet RFC の `rfc1001.txt`、`rfc1002.txt`。 その他 CIFS(以前のSMB)の仕様を以下のWebページにあるリンクから入手できる: http://samba.org/cifs/ 。

## 著者

オリジナルの Samba ソフトウェアと関連するユーティリティは、 Andrew Tridgell によって作られた。Samba は現在 Linux カーネルが 開発されているような方法でのオープンソースプロジェクトである Samba Team によって開発されている。

オリジナルの Samba の マニュアルページは Karl Auer によって書かれた。 マニュアルページは YODL 形式(別の、優秀なオープンソースソフトウェアで、 ftp://ftp.icce.rug.nl/pub/unix/ にある) で変換され、Jeremy Allison によって Samba 2.0 リリースのために更新された。 Samba 2.2 のための DocBook 形式への変換は Gerald Carter が行った。 Samba 3.0 のための DocBook XML 4.2 形式への変換は Alexander Bokovoy が行った。

## 日本語訳

このマニュアルページは Samba 3.0.23 - 3.4.15 対応のものである。

このドキュメントの Samba 3.0.0 対応の翻訳は

- たかはしもとのぶ (monyo@samba.gr.jp)

- はせがわ ようすけ

- ちかましゅうへい

によって行なわれた。

Samba 3.0.23 - 3.0.24 対応の翻訳は、たかはしもとのぶ (monyo@samba.gr.jp) によって行なわれた。

Samba 3.2.4 - 3.4.15 対応の翻訳は、太田俊哉 (ribbon@samba.gr.jp) によって行なわれた。