)を利用すると、プッシュモデルでもプルモデルでも、ネットワークを越えてファイルシステムをマウントすることができる。ほとんどのネットワークファイルシステムはプルモデルを採用しているが、この場合クライアントがネットワーク共有をマウントし、接続を開始するのもクライアントだ。これに対して、プッシュモデルのネットワーク共有では接続はサーバーが開始する。このため、ネットワーク非武装地帯(DMZ)にあるマシンからファイアウォールを越えてファイルサーバーにアクセスしたいときに都合がよい。DMZにあるクライアントがDMZの外にあるserverX上のネットワーク共有にアクセスする場合、NFSではDMZからserverXへの接続を許容しなければならないが、プッシュモデルでは接続はserverXからDMZのクライアントに対して開始されるのでそうした問題は発生しないからだ。Fedora、openSUSE、Ubuntuのリポジトリーにccgfsのパッケージはない。9マシン上でccgfsバージョン0.7.4をソースからビルドした。ccgfsには必要なソフトウェアがいくつかあるが、その中でインストールされていないのはlibHXだけだろう。9の各リポジトリーにある。最新版ccgfsのビルドにはバージョン1.25以降のlibHXが必要だ。install」でソースからビルドすること。ccgfsをビルドするときは、PKG_CONFIG_PATHの設定を忘れないように。後で示すように、/usr/localのディレクトリーを設定する。ccgfsはFUSEファイルシステムのため、ビルドの前にFUSE開発パッケージをインストールしておく必要がある。Hardyの場合はlibfuse-dev。ほかに、libattr、libxml2、libsslも必要だが、これらはすでにインストールされているだろう。ccgfsをビルドしインストールするコマンドは下のとおり。ここで、sysconfdir(デフォルトは/usr/local/etc)に/etcを指定しているのは、ccgfsにはinit.dスクリプトが含まれており、その構成ファイルをsysconfdirで探すからだ。同様に、configureの実行では、localstatedirオプションでグローバルな/varディレクトリーを指定する。installccgfsのインストールが終わったら、接続のための設定を行う。ここでは、わかりやすくするため、ファイルシステムをエクスポートするマシンをserverX、そのファイルシステムをマウントするクライアントマシンをclientYと呼ぶことにする。serverXからエクスポートするファイルシステムは/exportとし、clientYの/importにマウントするものとする。serverXでは、構成ファイル/etc/ccgfs-super.xmlを作成する。内容は下に示したとおり。その中で重要なのは、開始するためのコマンドを含む<s>行だ。-sパラメーターはserverXからエクスポートするパスを、-mパラメーターはclientYへの接続の方法とマウント位置を指定する。-mパラメーターでは、~/.ssh/configのHostエントリーを指定することもできる。毎回アイデンティティーファイルを選択したり、異なるポートを使って接続したりする必要があるときは、~/.ssh/configにHostエントリーを作っておき、ccgfs-super.xmlで指定すると便利だ。root@clientY:/import</s></ccgfs-super>ccgfsと共にインストールされるinit.dファイルではcheckprocやstartprocなどのコマンドが使われているが、これらはopenSUSE固有のコマンドで、Fedoraにはない。9の場合はデーモンを起動するfunctionsファイルを下に示すように変更する必要がある。お使いのLinuxディストリビューションに合わせてserverXのinit.dファイルを設定したら、ccgfs-superサービスを起動する。これで、clientYがserverXの/exportにアクセスできるようになる。startこのファイルシステムはプッシュ型なので、clientYがコマンドを発行してファイルシステムをマウントする必要はない。構成と起動はすべてserverX上で行われる。ccgfsはSSHを使ってリモートマシンを認証する。プッシュ型ファイルシステムでは、認証は、ファイルシステムをエクスポートするサーバー側から、そのファイルシステムをマウントするクライアントに対して行われる。接続も、すべて、ファイルサーバーからクライアントに対して行われる。したがって、DMZのマシンからファイルシステムにアクセスしても安全だ。DMZのマシンからサーバーへの接続を許可したり、そのマシンを認証したりする必要がなく、逆にそのマシンがファイルサーバーからの接続を許容するだけだからだ。プッシュモデルでファイルシステムをエクスポートすると、サーバーとクライアントの両方の構成がサーバーマシン上に移される。クライアントは、ほかのパスと同じように、そのファイルシステム上のパスを読み書きすることができる。10年以上にわたってファイルシステムに携わっている。博士課程を修了し、現在、libferris、ファイルシステム、検索ソリューションを中心にコンサルティングをしている。