## Using Samba

Robert Eckstein, David Collier-Brown, Peter Kelly 共著
第一版 1999 年 11 月
1-56592-449-5, 注文番号: 4495
416 ページ, 34.95 ドル

ハードコピー版(英語)を購入する

目次

| Chapter 5 |

> # 5. ブラウジングと高度な共有の設定

> Contents:
> ブラウジング
> ファイルシステムの相違点
> MS-DOS と UNIX におけるファイルのアクセス権と属性
> Name Mangling and Case
> ロックと Oplock

> この章では、前の章に引き続きディスク共有に関する記述を続ける。Windows と UNIX のファイルシステムとの様々な違いについて説明し、Samba がどのようにしてそれらの溝を埋めているかについて解説する。DOS と UNIX のファイルシステムの間には、驚くべき数の相違点がみられる。さらに名前の変換、ファイルのロック、Samba の中でも比較的新しい機能である機会的ロック(opportunistic locking, oplocks)についても簡単に記述する。しかし、そこに行く前にまずはSamba でブラウジングを行う際に発生する不可解な問題について説明しなければなるまい。

> ## 5.1 ブラウジング

> ブラウジングはネットワークで現在利用可能なサーバや共有を一覧する機能である。 (hasegawa 注: 共有の一覧はブラウジングの機能ではありません) Windows NT 4.0 や 95/98 のクライアントでは、ユーザは「ネットワークコン ピュータ」フォルダを用いて、ネットワーク上のサーバを一覧することができる。 サーバを示すアイコンをダブルクリックすることでユーザはそのマシンで利用 可能なプリンタやディスク共有の資源を確認することができるはずである (Windows NT 3. x では、ファイルマネージャの「Disk-Connect Network Drive」メニュー (TODO: 日本語 NT での表記は?) を使うことで、サーバ上で利用可能な共有の一覧を行うことができる)。

> Windows のコマンドラインで`net` `view` オプションを用いることによっても、ネットワーク上でどのサーバが現在存在している かを確認することができる。 以下は`net` `view` コマンドの実行結果の例である(monyo訳注: 以下は英語版の Windows での出力結果である):

>     C:\> net view
>     Servers available in workgroup SIMPLE
>     Server name            Remark
>     ----------------------------------------------------------
>     \\CHIMAERA             Windows NT 4.0
>     \\HYDRA                Samba 2.0.4 on (hydra)
>     \\PHOENIX              Windows 98

> ### 5.1.1 ブラウジングの抑止

> `browseable` オプションを用いれば、ブラウズリストでの共有の表示 を抑止することができる。 (hasegawa 注: しつこいですが、共有の表示はブラウズリストには含まれません。) この真偽値のオプションは、共有が「ネットワークコンピュータ」アイコンか ら見えることを完璧に抑止する。例えば前章の `[data]` 共有の表示を抑止するには、以下のように記述する:

>     [data]
>     	path = /home/samba/data
>     	browseable = no
>     	guest ok = yes
>     	comment = Data Drive
>     	volume = Sample-Data-Drive
>     	writeable = yes

> 通常ディスク共有をこのようにしたいとは思わないであろうが、browseable オプションは他人に見られたくないような内容が入った共有を作成したい時に便利である。例えば Windows ドメインコントローラのログオンスクリプトを格納する `[netlogin]` 共有などである (ログオンスクリプトに関する詳細な情報はChapter 6 ユーザ、 セキュリティ、ドメイン を参照のこと)。

> 別の例として`[homes]` 共有がある。 この共有は、普通ブラウズできないように設定されるため、`[homes]` という名前の共有はマシンのリソースとして表示されない。しかし、例えばユーザ`alice` がログインしてマシンの共有を見ると、`[alice]` という共有がマシンに出現する。 もし、 ログインしていない時でも `alice` の共有を全 員に見せたいという場合はどうするか? この場合はグローバルな `auto` `services` オプションを利用することになる。 このオプションは共有が常に見えるようにブラウズリストに共有の情報を登録する（monyo訳注: これは誤りである。ブラウズリストに共有の一覧情報が登録されることは絶対にない):

>     [global]
>     	...
>     	auto services = alice
>     	...

> ### 5.1.2 デフォルトの共有

> ユーザがある共有への接続に失敗した場合に接続される「デフォルトの共有」というものを設定することができる。 誰がいつこの共有に接続するか分からないため、おそらくこの共有に対しては`guest` `ok` オプションを `yes` に設定することになるだろう。 `default` `service` は、どこに接続してよいかまごついてしまった人に対して、ヘルプファイルのあるディレクトリを表示させるときなどに便利である。以下に一例を示す:

>     [global]
>     	...
>     	default service = helpshare
>     	...

>     [helpshare]
>     	path = /home/samba/helpshare/%S
>     	browseable = yes
>     	guest ok = yes
>     	comment = Default Share for Unsuccessful Connections
>     	volume = Sample-Data-Drive
>     	writeable = no

> ここでは `path` オプションに `%S` 変数を用いていることに注意してほしい。 `%S` 変数を使うと、これは結果的に接続されるデフォルトの共有名ではなく、要求された(存在しない)共有 (ユーザから最初に接続要求した共有)を参照する。この機構を用いれば、サービスの名前に応じて別々のディレクトリを用意し、ユーザにより適したへルプファイルを提供することが可能になる。さらに、要求される共有名に含まれるアンダーライン(_)は、 `%S` 変数中で利用された時はスラッシュ(/)に変換される。

> ### 5.1.3 ブラウザ選定

> Chapter 1 Samba 概要で言及したように、各サブネット上の一台のマシンが現在起動しているマシンのリストを保持する。このリストは ブラウズリスト と呼ばれ、それを保持するサーバをローカルマスタブラウザと呼ぶ。マシンがネットワークに接続されたり切断されたりする度に、ローカルマスタブラウザはブラウズリストの情報の更新を続け、要求したマシンにリストを返却する。

> コンピュータは、ローカルサブネット内でのブラウザ選定を経てローカルマスタブラウザになる。ブラウザ選定はいつ発生するかわからない。Samba が常にサブネットのローカルマスタブラウザになる設定から、決してならない設定まで様々な設定が可能であり、ブラウザ選定で無理やり選定に勝利することも可能である。例えばChapter 4 ディスク共有で設定ファイルに追加した以下のオプションは、どんなマシンが存在していても、Samba が必ずローカルマスタブラウザの選定に勝利するような設定である:

>     [global]
>     	netbios name = HYDRA
>     	server string = Samba %v on (%L)
>     	workgroup = SIMPLE

>     	#  Browsing election options
>     	os level = 34
>     	local master = yes

>     	#  Networking configuration options
>     	hosts allow = 192.168.220. 134.213.233. localhost
>     	hosts deny = 192.168.220.102
>     	interfaces = 192.168.220.100/255.255.255.0 \
>     					134.213.233.110/255.255.255.0

>     	# Debug logging information
>     	log level = 2
>     	log file = /var/log/samba.log.%m
>     	max log size = 50
>     	debug timestamp = yes

>     [data]
>     	path = /home/samba/data
>     	browseable = yes
>     	guest ok = yes
>     	comment = Data Drive
>     	volume = Sample-Data-Drive
>     	writable = yes

> しかし、常に選定に勝利したくはないという場合はどのようにすればよいであろうか? また Windows NT Server が存在する場合、ブラウジングはそちらに任せたい場合はどうすればよいだろうか? これらを実現するには、ブラウジングの動作についてもう少し勉強する必要がある。既に理解している通り、選定に参加する各マシンは自分自身に関する情報をブロードキャストする。これには、以下の情報が含まれている:

> - 利用される選定プロトコルのバージョン

> - マシンのオペレーティングシステム

> - クライアントがネットワーク上で存在している時間

> - クライアントのホスト名

> これらによって、選定が行われる。オペレーティングシステムには、 表 5.1に示すような値が割り当てられている(monyo訳注: monyoが試した限りでは値が33,17,2等をとることはない。OSのバージョンに関わりなく、ドメインコントローラの場合は32、それ以外のWindows NT/2000マシンは16、Windows 95/98/Me は1である)。

> 表 5.1: 選定で用いられるオペレーティングシステムの値
> オペレーティングシステム | 値
> --- | ---
> Windows NT Server 4.0 | 33
> Windows NT Server 3.51 | 32
> Windows NT Workstation 4.0 | 17
> Windows NT Workstation 3.51 | 16
> Windows 98 | 2
> Windows 95 | 1
> Windows 3.1 for Workgroups | 1

> これに加えて、ネットワーク上の各々のコンピュータには役割に応じて 表 5.2に示すような値が割り当てられている。

> 表 5.2: 選定におけるコンピュータの役割の設定
> 役割 | 値
> --- | ---
> プライマリドメインコントローラ | 128
> WINS クライアント | 32
> 優先マスタブラウザ | 8
> 現在のマスタブラウザ | 4
> Standby Browser | 2
> 現在のバックアップブラウザ | 1

> 選定は以下の順番で行われる:

> 1. 選定プロトコルのバージョンが最も高いマシンが勝利する。(これまでのところ、全ての Windows クライアントの選定プロトコルのバージョンが1のため、この比較は意味を持たない。)

> 2. オペレーティングシステムによる値が最も高いマシンが勝利する。

> 3. もしこれでも決着しない場合は優先マスタブラウザ(役割 8)のマシンが選定に勝利する。

> 4. それでも決着しない場合は、起動してからの時間がもっとも長いクライアントが選定に勝利する。

> 5. これでも決着しない場合は、最終的にアルファベット順で最初の方のクライアントが勝利する。

> 6. 「次点」のマシンは、バックアップブラウザになる。

> このことから、ネットワーク上に Windows NT Server (4.0 か 3.51)が存在しない場合にのみ、Samba をローカルマスタブラウザとして動作させたい時は、先ほどの例の中にあった`os` `level` パラメータを以下のように変更する:

>     os level = 31

> これで Samba は、より高いオペレーティングシステム値の Windows NT 4.0 か Windows NT 3.5 サーバに対しては選定で即座に敗北する。一方ローカルマスタブラウザを、どのマシンがプライマリドメインコントローラになっているかといった、ネットワーク上での役割に従って決定したい場合は、`os` `level` をネットワーク上で最も高いタイプのオペレーティングシステム値と同じにする。これで、選定プロトコルは次の項目でどちらが勝利するかを決定する。

> マシンがローカルマスタブラウザかどうかは、どのようにして調査できるだろうか? `nbtstat` コマンドを利用すること。チェックしたいマシンの NetBIOS 名を `-a` オプションの後に記述する:

>     C:\> nbtstat -a hydra

>            NetBIOS Remote Machine Name Table

>      Name                            Type         Status
>     ----------------------------------------------------------
>      HYDRA                     <00>  UNIQUE       Registered
>      HYDRA                     <03>  UNIQUE       Registered
>      HYDRA                     <20>  UNIQUE       Registered
>      ..__MSBROWSE__.           <01>  GROUP        Registered
>      SIMPLE                    <00>  GROUP        Registered
>      SIMPLE                    <1D>  UNIQUE       Registered
>      SIMPLE                    <1E>  GROUP        Registered

>      MAC Address = 00-00-00-00-00-00

> 探すべきエントリは、`..__MSBROWSE__.<01>`である。これがサーバがこのサブネット上で現在ローカルマスタブラウザとして動作していることを示すものである。さらにマシンが Samba サーバの場合、 Samba の nmbd ログファイルに、以下のようなエントリがあるかどうかをチェックすることもできる:

>     nmbd/nmbd_become_lmb.c:become_local_master_stage2(406)
>     *****
>     Samba name server HYDRA is now a local master browser for
>     workgroup SIMPLE on subnet 192.168.220.100
>     ****

> なお、プライマリドメインコントローラとして動作している Windows NT サーバは、ローカルマスタブラウザの役割を割り当てるための sneak がある; これが preferred master browser ビットである。先ほど、Samba はこのビットも設定することが可能であると記述した。これは`preferred` `master` オプションで行うことができる:

>     #  Browsing election options
>     os level = 33
>     local master = yes
>     preferred master = yes

> preferred master ビットが1に設定されると、マシンの起動時にブラウザ選定を強制する。もちろんこれは`os` `level` オプションを Windows NT マシンと同等に設定した場合にのみ必要である。NT サーバなどの他のマシンに preferred master の役割が割り当てられているときには、このオプションを有効にしないことを推奨する。

> ### 5.1.4 ドメインマスタブラウザ

> 章の冒頭で、複数のサブネットにまたがったWindowsのワークグループやドメインを構築するには、ある1台のマシンが ドメインマスタブラウザとして動作する必要があるということを述べた。ドメインマスタブラウザはサブネットを越えるワークグループの間でブラウズリストを統合する。これは、各々のローカルマスタブラウザが定期的に自分がもつブラウズリストをドメインマスタブラウザに同期させることで実現されている。同期作業により、ローカルマスタブラウザはドメインマスタブラウザのブラウズリストにない、すべてのサーバのリストを受け渡し、逆も同様に行う。完全に同期が行われた環境では、各々のローカルマスタブラウザは、最終的にドメイン全体のブラウズリストを持つことになる。

> ローカルマスタブラウザと異なり、ドメインマスタブラウザの役割の決定の際には選定は行われない。代わりに管理者が役割を手動で設定する。しかし Microsoft の設計では、ドメインマスタブラウザとプライマリドメインコントローラ(PDC)は、共にリソースタイプ <1B> を登録する。つまり両者は不可分なのである。

> ネットワーク上に PDC として動作する Windows NT サーバが存在するときは、Samba をドメインマスタブラウザにしないことを推奨する。逆もまた真である: Samba が PDC の役割を担っているときは、Samba をドメインマスタブラウザとすることを推奨する。Samba では、両者を分割することも可能だが、これはよい考えではない。PDC とドメインマスタブラウザを別のマシンで実行した場合、Windows のワークグループに予測できないエラーを引き起こす可能性がある。

> Samba は以下のオプションを設定することで、サブネットにまたがるワークグループのドメインマスタブラウザとしての役割を設定できる:

>     domain master = yes

> Samba のマシンが本当にドメインマスタブラウザであるかどうかは、以下の nmbd のログファイルで確認できる:

>     nmbd/nmbd_become_dmb.c:become_domain_master_stage2(118)
>     *****
>     Samba name server HYDRA is now a domain master browser for
>     workgroup SIMPLE on subnet 192.168.220.100
>     *****

> また Samba 配布パッケージに付属する `nmblookup` コマンドで、ワークグループのユニーク <1B> リソースタイプを検索することでも同様に確認できる:

>     # nmblookup SIMPLE#1B
>     Sending queries to 192.168.220.255
>     192.168.220.100 SIMPLE<1b>

> #### 5.1.4.1 複数サブネット

> サブネットをまたがるワークグループやドメインを作成するときには、三つのルールを忘れないこと:

> - ワークグループやドメイン内の各サブネットに、ローカルマスタブラウザとして機能する Windows NT か Samba のマシンが存在すること。(サブネットにドメインマスタブラウザが存在する時は、ローカルマスタブラウザは不要である。)

> - ワークグループ内に、ドメインマスタブラウザとして機能する Windows NT Server か Samba マシンが存在すること。

> - 各ローカルマスタブラウザは、ドメインマスタブラウザと同期するように設定されていること。

> Samba には、ドメインマスタブラウザがネットワーク上にないか、設置したくない場合のための機能がいくつか備わっている。 図 5.1のようなサブネット構成を考えてみよう。

> #### 図 5.1: Samba サーバが存在する複数サブネット構成

> まず、ローカルマスタブラウザの Samba サーバは、`remote` `announce` 設定オプションにより、別のサブネットに存在するコンピュータにサーバの情報をブロードキャストで送付することができる。 これは、Samba サーバを別のサブネットのブラウズリストに含める効果がある。しかし、これを達成するにはブロードキャストが別のサブネットのローカルマスタブラウザに届く必要がある。多くのルータは、デフォルトではブロードキャストアドレスへのパケットの通過を許可していない; サブネット越えのブロードキャストパケットの通過を許可するために、ルータの設定を変更する必要があるかも知れない。

> `remote` `announce` オプションで、ブロードキャストを送付するサブネットやワークグループ名を記述する。例えば 192.168.221 と 192.168.222 サブネット上の SIMPLE ワークグループに存在するマシンに Samba サーバの情報をブロードキャストで送付するときは、以下のように指定する:

>     #  Browsing election options
>     os level = 34
>     local master = yes
>     remote announce = 192.168.221.255/SIMPLE \
>     	192.168.222.255/SIMPLE

> また、別のサブネットのローカルマスタブラウザが常に同じIPアドレスであることが保証できる場合には、ブロードキャストを送付する特定のアドレスを指定することも可能である。

> Samba のローカルマスタブラウザは、ブラウズリストを別のサブネット上でローカルマスタブラウザとして動作している Samba サーバと同期させることも可能である。例えば、Samba がローカルマスタブラウザとして設定されていて、Samba のローカルマスタブラウザが 192.168.221.130 と 192.168.222.120 に存在するとする。この場合`remote` `browse` `sync` オプションを以下のように用いることで、Samba サーバ同士で直接ブラウズリストの同期ができる:

>     #  Browsing election options
>     os level = 34
>     local master = yes
>     remote browse sync = 192.168.221.130 192.168.222.120

> これが機能するには、別の Samba マシンもローカルマスタブラウザであることが必要である。ローカルマスタブラウザのIPアドレスがわからない場合は、ブロードキャストアドレスを用いることもできる。

> ### 5.1.5 ブラウジングのオプション

> 表 5.3 には、Samba のブラウジング関連の設定パラメータが14個列挙されている。簡単にユーザが共有やプリンタの場所を把握できるようにしたいのであれば、デフォルトのままの設定を推奨する。

> 表 5.3: ブラウジング関連の設定オプション
> オプション | パラメータ | 機能 | デフォルト | スコープ
> --- | --- | --- | --- | ---
> `announce as` | `NT` か `Win95` か `WfW` | Samba が自分をアナウンスするのに用いるオペレーティングシステムのタイプを指定する。 | `NT` | グローバル
> `announce version` | 数値 | Samba が自分をアナウンスするのに用いるオペレーティングシステムのバージョンを指定する。 | `4.2` | グローバル
> `browseable (browsable)` | 真偽値 | 共有をマシンのリソースのリストで表示するかどうかを設定する。 | `yes` | 共有
> `browse list` | 真偽値 | `yes`の場合、Samba はこのサーバでブラウズリストを提供する。 | `yes` | Global
> `auto services (preload)` | 文字列(共有名のリスト) | ブラウズリスト(monyo訳注: 前述したようにブラウズリストに共有名のリストが現れることはない。ここで述べているのはあるコンピュータの共有を一覧したときに、の意である)上に常に現れるようにする共有名のリストを設定する | なし | グローバル
> `default service (default)` | 文字列(共有名) | クライアントが要求した共有名が smb.confになかった時に提供する共有(サービス)名である | なし | グローバル
> `local master` | 真偽値 | `yes`の場合、Samba はローカルサブネットのマスタブラウザになろうとする | `yes` | グローバル
> `lm announce` | `yes`か `no`か `auto` | LAN Manager 形式のホストアナウンスメントを有効にするか無効にするかを設定する | `auto` | グローバル
> `lm interval` | 数値 | LAN Manager 形式のアナウンスメントを送信場合の頻度を秒単位で指定する | `60` | グローバル
> `preferred master (prefered master)` | 真偽値 | `yes`の場合、Samba は優先マスタブラウザビットをセットし、ローカルマスタブラウザになろうとする | `no` | グローバル
> `domain master` | 真偽値 | `yes`の場合、Samba はワークグループのドメインマスタブラウザになろうとする | `no` | グローバル
> `os level` | 数値 | ローカルマスタブラウザの選定時に用いられるSambaのOSレベルを設定する | `0(monyo訳注: Samba 2.0.6以降は20)` | グローバル
> `remote browse sync` | 文字列(IPアドレスのリスト) | ブラウズリストを同期させるSambaサーバをリストする | なし | グローバル
> `remote announce` | 文字列 (IPアドレス/ワークグループの組) | Samba がブラウズリストに現れるようにするために直接ブロードキャストパケットを送付するサブネットとワークグループ名を列挙する | なし | グローバル

> #### 5.1.5.1 announce as

> このグローバル設定オプションにより、Samba がネットワーク上の他のマシンに対してアナウンスを行う時に用いるOSのタイプを指定する。このオプションのデフォルト値は`NT`であり、Windows NT オペレーティングシステムを表す。他に取りうる値としては、Windows 95 オペレーティングシステムを表す`Win95`や、Windows for Workgroup オペレーティングシステムを表す`WfW`がある。デフォルトの値は、以下のようにして上書きできる:

>     [global]
>     	announce as = Win95

> この設定オプションのデフォルト値を変更することは推奨しない。

> #### 5.1.5.2 announce version

> このグローバルオプションは、しばしば`announce` `as` 設定オプションと対で用いられ、Samba がネットワーク上の他のマシンに対してアナウンスするOSのバージョンを設定する。このオプションのデフォルト値は 4.2 である、現在の Windows NT のバージョンである 4.0 を上回る (hasegawa 注: 原文の執筆時点では Windows2000 は出ていなかった)。 グローバルセクションで以下のように記述することで別の値を設定できる:

>     [global]
>     	announce version = 4.3

> この設定オプションのデフォルト値を変更することは推奨しない。

> #### 5.1.5.3 browseable

> `browseable` オプション(`browsable`と書かれることもある)は、その共有が、マシンが保有するリソースの一覧の中に現れるかどうかを制御する。デフォルトでこのオプションは常に`yes`に設定されている。共有をクライアントから見えないようにしたい場合は、このオプションを`no`にすること。

> このオプションは、Windows のエクスプローラからUNC表記(`\\server\accounting)`を用いる等して、共有にアクセスすることを抑制するものではないことに注意。マシンのリソースの一覧にこの共有が現れることを抑止するだけのものである。

> #### 5.1.5.4 browse list

> このオプションの値をデフォルトの `yes`から変更する必要はまずないであろう。 Samba がローカルマスタブラウザとして動作している(すなわち Samba がブラウザ選定に勝利した)とき、このグローバルな`browse` `list` オプションを用いることで、Samba がブラウズリストをクライアントに提供するかどうかを制御することができる。デフォルトで Samba は常にブラウズリストを提供する。以下のように指定することで抑止することができる:

>     [global]
>     	browse list = no

> ブラウズリストを無効にした場合、クライアントは他のマシンやそのサービス、またネットワーク上に存在する他のドメインの情報をブラウズすることができなくなる(monyo訳注: 何度も言うが、マシンのサービスを一覧するのはブラウジングの機能ではない)。 これは特定のマシンへのアクセスを抑止するものではないことに注意。正しいマシンの名前/アドレスと共有名がわかっていれば、net use コマンドやWindows のエクスプローラを用いてドライブ名をマッピングすることにより明示的に接続することが可能である。この設定はクライアントが受け取るブラウズリストへの情報の登録を抑止するに過ぎない。

> #### 5.1.5.5 auto services

> このグローバルな `auto` `services` オプションは、 `preload`とも呼ばれ、特定の共有名が常にブラウズリスト上に現れるようにするものである。このオプションは、 `[homes]` や `[printers]` 共有によって作成された特定のユーザやプリンタ共有をアナウンスしたいが、他は見せたくない時に利用できる。

> このオプションはディスク共有と一緒に利用するとよい。(システムのプリンタファイル中に存在する)各プリンタをブラウズリスト中に表示させたい時は、代わりに`load` `printers` オプションを用いることを推奨する。 `auto` `services` オプションで設定された各共有も、`browse` `list` オプションが`no`に設定されている場合は表示されない。

> #### 5.1.5.6 default service

> グローバルな `default` `service` オプション(しばしば`default`とも呼ばれる)は、「滑り止め」共有を指定する。この共有名が存在するときに、クライアントが存在しないディスクやプリンタ共有を指定した場合、Samba は代わりにそのユーザをこのオプションで指定された共有に接続させようとする。このオプションは以下のようにして指定を行う:

>     default service = helpshare

> Samba 設定ファイル中で、共有名にはブレース(monyo訳注[]の記号)をつけるが、ここでの `helpshare`共有名には、ブレースをつけないこと。なお `%S` 変数をこのオプションで指定される共有に設定した場合、それは要求された存在しない共有名を表し、default service で設定された共有は指さない。変数名が利用される時に、要求された共有名中のアンダースコア(`_`) はスラッシュ(`/`)に変換される。

> #### 5.1.5.7 local master

> このグローバルオプションは Samba が起動時にサブネットのローカルマスタブラウザになろうとするかどうかを制御する。このオプションが`yes`に設定されている場合、Samba はブラウザ選定に参加する。しかし、この設定は選定での勝利とは無関係である(`preferred` `master` や`os` `level` 等のパラメータは Samba がブラウザ選定で勝利するのに影響する)。このオプションが`no`の場合、Samba は全てのブラウザ選定で敗北する。その他の関連オプションでどのような値が設定されていても関係しない。デフォルト値は`yes`である。

> #### 5.1.5.8 lm announce

> グローバルな`lm` `announce` オプションは、 nmbd に LAN Manager のホストアナウンスメントをサーバに代って送信するかどうかを制御する。このホストアナウンスメントはIBM の OS/2 operating system のような古いクライアントが必要とする場合がある。このアナウンスメントはサーバがクライアントのブラウズリストに追加されるようにする。有効になると Samba は自分自身を`lm` `interval` オプションで設定された秒単位の間隔で定期的にアナウンスする。

> この設定オプションが通常の`yes` および `no`の真偽値をとった場合は、各々 LAN Manager のアナウンスメントを有効にするか無効にするかを制御する。また、もう一つの値である `auto`をとった場合は nmbd通常は LAN Manager アナウンスメントの受信だけを行うが、一度受信すると以後は自分も送信するようになるという動作を行う。LAN Manager アナウンスメントがネットワーク上の他のマシンから送信されると nmbd は自分自身を通知するための LAN Manager アナウンスメントを開始する。このオプションは以下のように指定する:

>     [global]
>     	lm announce = yes

> デフォルトの値は`auto`である。この値をデフォルトから変更する必要は、多分ないであろう。

> #### 5.1.5.9 lm interval

> このオプションは`lm` `announce`と共に用いられ、秒単位で nmbd が LAN Manager 形式のアナウンスメントを定期的に行う間隔を指定する。 このオプションは LAN Manager アナウンスメントが有効になっている時に限って用いられ、デフォルトの値は 60 秒である。この値を 0 にすると Samba は `lm` `announce` オプションの値に関わらず、LAN Manager ホストアナウンスメントをいっさい送信しなくなる。この値は以下のようにして設定する:

>     [global]
>     	lm interval = 90

> #### 5.1.5.10 preferred master

> `preferred` `master` オプションは、Samba がブラウザ選定に参加する際に優先マスタブラウザのビットを設定する。これにより、サーバはワークグループ内の同じOSレベルのマシンの間で、少しだけ優先順位があがることになる。Samba をローカルマスタブラウザになるように設定したいのであれば、以下のようにするとよい:

>     [global]
>     	preferred master = yes

> それ以外の時はデフォルト値の`no`のままにしておくこと。Samba が優先マスタブラウザとして設定された場合は、その Samba が最初にネットに接続された時点で必ず選定が行われる。

> #### 5.1.5.11 os level

> グローバルな `os` `level` オプションは Samba がブラウザ選定中に用いるOSのレベルの値を設定する。Samba がブラウザ選定で勝ってマスタブラウザになるようにしたいのであれば、この値をネットワーク上に存在するもっとも値の大きいOSよりも高い値に設定すればよい。値については表 5-1 に示している。デフォルトの値は 0 であり(monyo訳注: Samba 2.0.5aまでのデフォルト値は1で、Samba 2.0.6以降は20である)、これは Samba が全ての選定で敗北することを意味する(monyo訳注: デフォルト値が0でない場合は、必ず敗北するとは限らない)。Samba がすべての選定で勝利するようにしたいのであれば、以下のようにすること:

>     os level = 34

> これにより、サーバが選定の度に優先度を34として通知し、かならず勝利するようになる。

> #### 5.1.5.12 domain master

> Samba が NTドメインやワークグループのプライマリドメインコントローラである場合、それは同時にドメインマスタブラウザに設定すべきである。ドメインマスタブラウザはNetBIOSリソースタイプの<1B> を登録し、ドメインを構成する個々のサブネットのローカルマスタブラウザとの間でブラウズリストの交換を行う特別なマシンである。Samba をドメインマスタブラウザにする場合は、以下のように smb.confの `[global]` セクションに記述する:

>     [global]
>     	domain master = yes

> プライマリドメインコントローラ(PDC)として動作している Windows NT Server がネットワーク上に存在するのであれば、Samba がドメインマスタブラウザになるような設定をしないことを推奨する(monyo訳注: 推奨というレベルではなく絶対にしてはならない)。逆もまた同様であり、Samba が PDC の役割を果たしているのであれば、ドメインマスタブラウザとして動作するようにすべきである。PDC とドメインマスタブラウザを分割した場合、ネットワーク上に予測できない障害が発生するであろう。

> #### 5.1.5.13 remote browse sync

> グローバルな `remote` `browse` `sync` オプションは、Samba に別のサブネットのローカルマスタブラウザとブラウズリストの同期を行わせる設定を行う。しかし、同期は別の Samba サーバとの間でのみ可能で、Windows コンピュータとは行えない。例えば Samba サーバがサブネット 192.168.235 のマスタブラウザであり、Samba のローカルマスタブラウザが別のサブネットである 192.168.234.92 と 192.168.236.2 に存在するとき、以下のように指定することが可能である:

>     remote browse sync = 192.168.234.92 192.168.236.2

> Samba サーバは直接リストに記述されたサーバと通信を行って、ブラウズリストを同期させる。同様に以下のように記述することもできる:

>     remote browse sync = 192.168.234.255 192.168.236.255

> この場合、Samba はブラウズリストを同期させる対象である各サブネットのローカルマスタブラウザのIPアドレスを特定するのにブロードキャストを用いる。ただしこの方式が利用できるのは、ルータがブロードパケットを通過させるようになっている場合だけである。

> #### 5.1.5.14 remote announce

> Samba サーバは `remote` `announce` オプションを用いることで、ブラウズリストを別のサブネットに対して提供することができる。 通常は、別サブネットのローカルマスタブラウザに対して提供するようにするが、ローカルマスタブラウザのアドレスを知らないのであれば、以下のようにブロードキャストアドレスへの送付もできる:

>     [global]
>         remote announce = 192.168.234.255/ACCOUNTING \
>     						192.168.236.255/ACCOUNTING

> これにより、Samba は 192.168.234 と 192.168.236 の全てのマシンに対してホストアナウンスメントをブロードキャストするので、サブネットのローカルマスタブラウザがそれを受信できる筈である。予めローカルマスタブラウザのアドレスがわかっていれば、それを指定することもできる。

4.8 ロギング設定オプション |  | 5.2 ファイルシステムの相違点

O'Reilly Home | O'Reilly Bookstores | How to Order | O'Reilly Contacts
International | About O'Reilly | Affiliated Companies

© 1999, O'Reilly & Associates, Inc.