Chapter 20. Microsoft 分散ファイルシステムツリーのホスティング
Prev | Part III. 詳細な設定方法 | Next

## Chapter 20. Microsoft 分散ファイルシステムツリーのホスティング

### Shirish Kalele

Samba Team & Veritas Software

`<samba@samba.org>`

### John H. Terpstra

Samba Team

`<jht@samba.org>`

12 Jul 2000

## 特徴と利点

分散ファイルシステム (DFS) はネットワーク上にある資源について実際の物理的な配置 から、ユーザが見ているファイルとディレクトリの論理的ビューを切り離す手 段を提供する。 高い可用性と円滑なストレージ拡張、負荷分散などを可能にする。

DFS の情報について、Microsoft documentationを参照のこと。 この文書は、 Samba を利用している UNIX で (DFS対応クライアントがブラウズするため) DFS ツリーを どのようにホスティングするか説明する。

Samba サーバは、`smb.conf` ファイルのグローバル Boolean パラメータ host msdfsを設定することで DFS サーバにできる。 共有レベルの論理値パラメータmsdfs rootによっ て共有を DFS ルートとして指定できる。 Samba 上の DFS ルートディレクトリはシンボリックリンクの形式で DFS リンクを提供 できる。例えば、共有ディレクトリ内のシンボリックリンク `junction->msdfs:storage1\share1` は DFS ジャン クション (接点) として機能する。 DFS 対応クライアントがジャンクションリ ンクにアクセスしようとするとき、それらは実際のストレージ ( この場合 は `\\storage1\share1` ) にリダイレクトされる。

Samba 上の DFS ツリーは、 Windows 95 から Windows 200x までの DFS 対応クライア ントをサポートしている。 以下の設定例は、 Samba サーバでどのよう に DFS ツリーを設定するかを示す。 ディレクトリ`/export/dfsroot` 内で、他のネットワーク上のサー バへの DFS リンクを設定する。

    root# cd /export/dfsrootroot# chown root /export/dfsrootroot# chmod 755 /export/dfsrootroot# ln -s msdfs:storageA\\shareA linkaroot# ln -s msdfs:serverB\\share,serverC\\share linkb

Example 20.1. DFS が設定された smb.conf

`[global]`
`netbios name = GANDALF`
`host msdfs = yes`
`[dfs]`
`path = /export/dfsroot`
`msdfs root = yes`

DFS ルートとして使用しているディレクトリのパーミションと所有者の設定を行い、 特定のユーザだけが msdfs リンクを作成、削除、変更できるように設定すべきであ る。 シンボリックリンク名は、すべて小文字にすべきことに留意すること。この制約は、 Samba が、リンク名を取得するために、すべての大文字、小文字の組み合わせを試 すことを避けるために設けられている。 最後に、ネットワーク上の共有したいところへシンボリックリンクを張り、Sambaを起動する。

これで DFS 対応クライアントは、 `\\samba\dfs` にある Samba サーバー上の DFS ツリーをブラウズすることができる． リンクa,リンクb（クライアントからはディレクトリとしてみることができる） に アクセスすると、ユーザーは直接ネットワーク上の共有資源にアクセスす ることになる。

## よくあるエラー

- Windows　クライアントは、以前 DFS でなくマウン トされていたものが、 DFS ルートとしてマウントされたり、その逆 を行ったりすると、 リブートする必要がある． よりよい解決方法は、新規の共有として 公開し、DFS ルートとすることである。

- 現状では制約事項として、msdfs シンボリックリン ク名はすべて小文字で記述される必要がある。

- セキュリティのために、DFS ツリーのルートとな るディレクトリは、特定のユーザのみがそのディレクトリ内でシンボ リックリンクを変更できるように所有者とパーミッションを設定する 必要がある。

### MSDFSのUNIXパスは大文字小文字を識別する

あるネットワーク管理者は何故 DFS が機能しなかったかを究明しようとした長い会議 の後に Samba メーリングリストにアドバイスを送った。 彼のアドバイスには注意する価値がある。

“ 私の特定の DFS ルートが機能しない理由を解明するためにいくらかの時間を費やした。 私はシンボリックリンクはすべて小文字で記述するべきであると文書に書かれているこ とに気がついた。シンボリックリンクへのフルパスをも小文字で書き直すことにした。 ”

“設定例： 以下のように定義された共有がある”

`[pub]`
`path = /export/home/Shares/public_share`
`msdfs root = yes`

“そして (DFS クライアントがインストールされた) Windows で、以下のシンボリックリンクをたどることができなかった。 ”

    		damage1 -> msdfs:damage\test-share

“デバッグレベルを10にして実行して明らかになったこと”

    		[2003/08/20 11:40:33, 5] msdfs/msdfs.c:is_msdfs_link(176)		  is_msdfs_link: /export/home/shares/public_share/* does not exist.

“気になる。 私はディレクトリ名 を `.../Shares/...` から `.../shares/...` に変更した。 (サービス定義 に伴って) そして、機能するようになった!”

Prev | Up | Next
Chapter 19. ドメイン間の信頼関係 | Home | Chapter 21. 旧式の印刷サポート