Using Samba

Using Samba

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

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

目次


Previous: 4.8 ロギング設定オプション Chapter 5 Next: 5.2 ファイルシステムの相違点
 

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

この章では、前の章に引き続きディスク共有に関する記述を続ける。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 サーバが存在する複数サブネット構成

図 5.1

まず、ローカルマスタブラウザの 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 の全てのマシンに対してホストアナウンスメントをブロードキャストするので、サブネットのローカルマスタブラウザがそれを受信できる筈である。予めローカルマスタブラウザのアドレスがわかっていれば、それを指定することもできる。


Previous: 4.8 ロギング設定オプション 目次 Next: 5.2 ファイルシステムの相違点
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.