このテキストは、日刊デジタルクリエイターズに寄稿したものです。
■Workforce of a Freelance(9)
ネットワークホームを見据えてみよう
2005/2/4配信号/新居雅行
電子メールのやりとりは「メールソフト」で作業するものというのが当たり前になっているが、筆者らが開発しているメールソフトの「オープンメール環境(OME)」も、当初はもちろん、「メールクライアント」を作るのが目的であった。しかしながら、ネットワーク利用が進むとまた違う方向性も見えてくる。もっとも、実はそれは大昔のメールの環境にとても似ている点がちょっとおもしろいところだろう。
●ネットワークOSのネットワークホーム
Mac OS Xを使っている人は、「ホームフォルダ」というものが何かはもう容易に理解できると思う。マルチユーザOSで、1つの資源(ハードディスク)を複数のユーザが問題なく使うために、要は個室を用意しているのがホームフォルダである。もっとも、Windowsしか知らない人にとっては理解しにくい概念ではあるが、UNIXではおなじみの概念である。
Mac OS X ServerとMac OS Xを使うことで、ユーザごとのホームフォルダを、ファイルサーバ上に確保することができる。以前のバージョンからできることではあるが、Panther ServerになってLDAPをしっかりサポートすることが可能となり実用度が増した機能でもあると言えるだろう。こうした機能を実現するのに、必ずしもMac OS X Serverは必要ないとは言うものの、Mac OS X Serverを使えば、GUIの管理ツールで簡単に実現できる。キーになる技術はOpen Directory 2、つまりディレクトリサービスだ。このネットワークサービスを使って、アカウントをサーバで一元管理し、ホームフォルダをファイルサーバで運用することができる。
ホームフォルダがネットワーク上にあるということの一つの大きなメリットは、ネットワーク内のどのMac OS Xからログインをしても、ファイルサーバ上の同一の公開ボリュームにホームがあることだ。あるコンピュータで、「書類」フォルダに保存したファイルは、別のコンピュータにログインしても「書類」フォルダにきちんと見えている。どのクライアントからも同じ環境を実現できる。もっとも、ハードディスクではなくEthernetの向こうにファイルを保存することになり、遅いのじゃないかと思うかもしれないが、確かにガリガリとディスク処理をするとなるとそれなりに遅いことは気になる。あまりに巨大なファイルを開いて頻繁に保存するのであれば、あまりお勧めはできないが、メールやWeb、文書作成といった事務作業くらいではそんなに重くはならない。もっとも、これはネットワークトラフィックが少ない環境だからかもしれないが、いずれにしても、ネットワークの性能は今時そんなやわではないのだ。
●ネットワークホームとメールソフト
たとえば、Mac OS Xの純粋メールソフトのMail.appは、ログインしているユーザのホームフォルダ内にあるLibrary以下のある場所にメールボックスをいくつかのファイルで構成している。だから、ネットワークホームで運用すると、メール自体は使っているマシンではなく、サーバ上に溜め込まれる。それでも、IMAPだのPOPだのと、通信をして、その結果をまたファイルサーバと通信をして保存することになっているのだが、まあ、今時のネットワークではさほど大きなデータのやり取りとも言えないだろう。
それでは、OMEではどうだろうか。もちろん、普通に使えば、Mail.appと同様になるが、そうやって運用しながら、ふと頭をもたげた使い方がある。OMEは1メールを1ファイルに保存するのであるが、受信したメールを保存するフォルダは、もちろん、ホームの中にある。クライアントで見えているそのホーム内のOMEのフォルダ(そのトップは「OMEルート」と呼んでいる)は、実はサーバにあるわけである。
となると、メールを受信してメールをファイルにする作業は、別にクライアントのMac OS Xでやる必要はなく、サーバ上でできればいいわけだ。つまり、ログインをしなくても、メールボックスから、サーバがせっせとメールを取ってきて、サーバにある自分のホーム内にあるOMEルートにメールを溜め込んでくれることになる。
ちなみに、ちょっとテクニカルな説明になるが、ユーザmsykのホームは、/Users/msykが一般的なパスである。これが、ネットワークホームだと、「/Network/Servers/サーバ名/Users/msyk」などとなる。「/Network/Servers/サーバ名」のところに、自動的にファイルサーバがつながっていて、そのパスはクライアントから見れば、ファイルサーバの中身になる。
ところで、Mac OS Xを普通に使っていて、「ネットワーク」の中身を不可解に思った人もいるかもしれない。Serversの下に、自分自身のホスト名で、ハードディスクのルートが見えているのにお気づきだろうか。クライアントで「/Network/Servers/サーバ名/Users/msyk」はサーバの方にあるが、サーバにとっては、「/Network/Servers/サーバ名/Users/msyk」で、実はローカルのハードディスクの、ユーザmsykのホームをしっかりポイントしている。なかなかうまくできている。
●UNIXの原点に戻った?
いずれにしても、クライアントに取ってのホームはサーバにとってのホームにもきちんとなる仕組みになってる。ならば、いつもクライアントで使っているアカウントで、サーバ上で、メールをダウンロードするソフトを稼働させることに、まったく問題はないことになる。つまり、~msykはクライアントもサーバも同じ場所を指すのである。動くソフトにとってはおおむねどちらでも同じことになる。
OMEの処理はほとんどがバックグランドでできるので、そうなるとUNIX的解決方法で、cronを使ってメールのダウンロードを一定時間ごとにさせるという手法が使える。未読メールはあるフォルダにエイリアスを作っているが、AFPでマウントする限りはサーバで作ったエイリアスも、クライアント側でも正しくエイリアスとして機能している。
ちなみに、メールの送信は、わざわざサーバにさせる必然性は、手書きして送信する上ではないので、それはクライアントでログインしているときに、クライアント側で送信プロセスを起動して行っている。
実はこうしたサーバでメールを受信するというやり方は、昔のUNIXのやり方である。昔は「クライアント」というものが滅多に使われず、端末からサーバに接続する使い方だった時代、ホームはサーバにあり、メールはホーム内に保存された。SMTPで送られるメールはホームにダイレクトに蓄積されるのが基本的な動作である。
つまり、OMEのように、データとしてのメールファイル群と、それを扱うアプリケーション群が分離したことで、結果的には原点に帰ったと言えるかもしれない。しかしながら、昔はそうした環境でより良くメールをやりとりするために、mhのような仕組みが作られ、エディタのemacs上で今のメールソフト並みの機能を実現していたのである。そして、現在は、昔のような端末しか使えないという状況ではなく、極めて高機能なクライアントOSが使える。それでも、昔からのネットワークホームという仕組みを導入することで、原点回帰するのはUNIXの思想の豊満さを感じる。
●モバイルからの問題もあるけれど
ただ、若干の問題があるとすると、常にネットワークログインができるとは限らないことだ。たとえば、PowerBookでモバイルするときはどうするか? 離れたところにいながら、ネットワークログインをするのはちょっと難しい。管理がぐっと大変になるし、ファイアウォールなどの経路の問題で実はダメってこともある。実は、単にホームフォルダを「サーバへ接続」でマウントして、OMEのルートにあるファイルが見えればそれでメールは読めるのだが、オンラインでないと基本的にはリアルタイムには読めないので、現状では念のため、PowerBook専用のメールアドレスに適当に転送をして、PowerBookはローカルでOMEを動かしているという状況である。ほんとうのユビキタスとは、決してアクセスポイントをばらまくことではなく、インフラからソフトウエアの利用までを巻き込んだ非常に広い範囲のスローガンであるとも言えるだろう。
Mac OS X Serverの機能を知っている人は「モバイルアカウント」はどうなのかと思うところだろう。もちろん、PowerBookはモバイルアカウントにしているが、OMEルートを同期するとかはしていない。それぞれ受信する方が、今のところは「軽い」気がする。ある意味、ちょろちょろやってくるメールは、ちょろちょろとダウンロードするのがいいみたいなのだ。 それでも、通常は自分のデスクで仕事をするのなら、ネットワークホームは便利だし、サーバに仕事をさせておくという使い方が、ネットワークっぽくていいんじゃないかと思う。そして、自分のデスク以外でも、自宅ならどこでも自分の作業環境が開いて作業できる。リビングで軽くメールをチェックするというのを、ちょっと重量感のあるポータブル機をいちいち持ち歩かなくても、そこにあるデスクトップ機でできるのである。そして、メールは常に自分のホームのOMEルートに随時溜め込んでくれているというわけである。
【にい・まさゆき】msyk@msyk.net
トレーナー、コンサルタント、デベロッパー、そしてライターと、あれこれこなすフリーランス。久しぶりに書籍が出る。いろいろワケありで、書いたのは半年ほど前なのだが、丸1冊の校正紙を受け取るのも懐かしい感覚だ。昔はそれを広げる机のスペースがあったはずなのに、なくなっていることに気付き、思わずキッチンテーブルワーカーになっていた。