名前

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

書式

nmbd [-D|--daemon] [-i|--interactive] [-F|--foreground] [--no-process-group] [-b|--build-options] [-p <port number(s)>] [-P <profiling level>] [-d <debug level>] [--debug-stdout] [--configfile=<configuration file>] [--option=<name>=<value>] [-l|--log-basename <log directory>] [--leak-report] [--leak-report-full] [-V|--version]

説明

このプログラムは 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 名であるが、 これは ${prefix}/etc/smb.confnetbios name によって変更可能である。 このように nmbd は、 自分の名前(復数の場合もある)を、 ブロードキャストの問い合わせに対して返答する。nmbd が返す追加の名前を、 smb.conf(5) 設定ファイル中のパラメーターで設定することができる。

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

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

オプション

-D|--daemon

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

-F|--foreground

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

-i|--interactive

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

-H|--hosts <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) マニュアルページを参照のこと。

-p|--port <UDP port number>

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

--no-process-group

nmbd用に新しいプロセスグループを作成しない。

-d|--debuglevel=DEBUGLEVEL

level は0から10までの整数値である。 このパラメータが設定されていない場合の規定の値は、0 である。

この値を大きくするほど、サーバーの動作に関するより詳細な情報が ログファイルに記録される。レベル 0 では、致命的なエラーと重大な警告 のみが記録される。レベル 1 は日々の運用に適しており、少量の稼働状況 に関する情報を生成する。

1 より上のレベルは大量のログが生成されるので、問題解決の時にのみ 使用すべきである。 3 より上のレベルは開発者だけが利用するように設計されて おり、莫大な量のログデータが生成される。そのほとんどは非常に謎めいた内容 となっている。

このパラメーターの指定は、${prefix}/etc/smb.conf ファイル中の、 log level パラメーターの 指定よりも優先する事に注意。

--debug-stdout

このパラメータはデバッグ出力を STDOUT にリダイレクトする。既定では、 すべてのクライアントはログを STDERR に出力する。

--configfile=CONFIGFILE

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

--option=<name>=<value>

コマンドラインから smb.conf(5) オプション "<name>" に値 "<value>" を設定する。 これはコンパイル時の既定値と設定ファイルから読み込まれた オプションを上書きする。名前または値に空白が入っていた場合、 引用符で --option=name=value 全体を囲む。

-l|--log-basename=logdirectory

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

--leak-report

終了時の talloc リークレポートを有効にする。

--leak-report-full

終了時の完全な talloc リークレポートを有効にする。

-V|--version

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

-?|--help

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

--usage

簡単な使用法を表示する。

関連ファイル

/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 ファイルにダンプする。さらに、シグナルはnmbd の 設定をリロードする

SIGHUP シグナルを送る代わりに、ファイルへの名前リストのダンプ要求 と、設定ファイルのリロードは、 smbcontrol(1) プログラムを使って送ることも できる。

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

バージョン

この man ページは、Samba バージョン 4.17.0 用である。

関連項目

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

著者

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

日本語訳

このマニュアルページは Samba 4.15.0 - 4.17.0 に対応する。

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

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

  • はせがわ ようすけ

  • ちかましゅうへい

によって行なわれた。

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

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