Amahiが提供する高度で操作性に優れたホームネットワーク環境

 ネットワーク接続ストレージ(NAS:Network-Attached Storage)用デバイスの中には、ネットワークストレージ機能は当然のこととして、VPNアクセス、カレンダ/スケジューリング、wikiを始め、iTunesサーバなどの追加機能を装備しているものも多い。そして本稿で紹介するAmahi Linux Home Serverは、これらの諸機能プラスアルファをFedora 9ベースのNASマシンにて統合することを目指したオープンソース製サーバだ。

 Amahiは、上級ユーザを対象とした各種のホームネットワークサービスを提供するためのWeb 2.0インタフェースを備えており、実質的に1つのイントラネットサーバとして機能するよう作られている。しかも提供される機能の中には、ファイルサーバやiTunesサーバだけでなく、WebDAVに対応したカレンダサーバも取り込まれているのだ。また、バックアップサーバを使用すれば、手元のネットワークを介したシステムバックアップサービスも利用可能となる。その他、ドメインネームサーバとDHCPサーバも組み込まれているので、AmahiのWebインタフェースを使用するにあたって個々のマシン別にアクセス設定をする必要はない。そしてGoogle Mapsライクな機能を備えたオープンソース系マップサーバと、オープンソース系ブログサーバのWordPressも追加可能で、その手順についてはAmahi.orgのサポートwikiにある解説が参考となるだろう。同じくtorrentサーバおよび、パーソナルウェイトトラッカ、スライドショービュワー、ハウスホールドwikiなどのWebアプリケーションも特別な設定なしで利用でき、個々の操作法についてはAmahi.orgへのリンクが用意されている。

 Amahiシステムのインストールを行うには、同プロジェクトのサイトにアクセスして、ユーザ登録をする必要がある。サイトに登録するのは、ユーザ名、メールアドレス、ドメイン名、ホームネットワークにて使用するプライベートIPアドレス群といった情報だが、このプロジェクトの場合、複雑なインストール手順からエンドユーザを解放するべく、ほぼ完全に自動インストールされるシステムをこれらの情報を基に構成してくれるようになっているのだ。

 Amahiプロジェクトから推奨されているインストール方式は、各ユーザによる同プロジェクトのリポジトリアクセスを新規のFedora 9のインストール時に設定しておき、インストールプロセスの終了後にコマンド入力1つでAmahiシステムをインストールできるようにしておくというものである。クリーン状態のFedora 9をインストールするのは、既に各種の設定が施されたパッケージを多数読み込むことで、Amahiの正常な動作が妨げられたり既存のセットアップ側が破損するといった事態を回避するための措置だ。具体的にはFedora 9のクリーンインストールを行ってから、登録後に提示されるインストール手順を実行することで、新品状態の作業環境を構成すればいい。なおAmahiのインストールは、既存のFedora 9インストレーションに対して実行することも可能だが、そうした方式をプロジェクトは推奨していない。

 Amahiのインストール完了後の手順としては、サーバをリブートさせ、FedoraにログインしてFirefoxを起動し、「http://hda」にアクセスしてAmahi Dashboardを呼び出す。これにより、Amahiのコアアプリケーション群へのアクセス用インタフェースが初期状態にて表示されるはずだ。Dashboardページの右上に配置されたMyAppsページは、必要なアプリケーションを“インストール”してオンライン化するための画面である。同じく画面左側にはアプリケーションアイコンが配置されており、ここではサーバの構成とその状態チェックも行える。パーソナルwiki、カレンダサーバ、Amahiセットアップのページについては、Amahi Webページの上部に表示される個々のリンクを通じてアクセスすればいい。テーマ機能に関してはユーザ選択可能なテーマ群が用意されているが、そもそもすべてのページがテーマを使用する訳ではないので、特に不満となる点もないというのが実際である。

 Amahiのセットアップページでは、Amahiサーバ上のドライブ容量だけでなく各ドライブの動作温度も監視でき、その他、ユーザや共有物の設定、WordPressおよびMaps(カスタム版Apacheにて動作)などのWebアプリケーションのインストール状況、DHCPサーバの提供するスタティックおよびダイナミックIP群、および各種テーマに関する管理も行える。同じくデバッグページでは、問題発生時のamahi.orgに対するレポート通知が行えるようになっている。

 AmahiのファイルサーバはSambaをベースとしているので、Ethernetカードを含めた諸設定および各種機能もオリジナルに準じており、その操作はWebブラウザから行えるようになっている。ファイルサーバを使用するための操作は“New Share”をクリックして、必要な名前を入力することだけだ。その後の処理は、すべてAmahiが自動で実行してくれる。Books、Docs、Movies、Music、Torrents、Picturesの共有機能についてはデフォルトでインストールされるので、ブートアップすれば使用可能な状態となっているはずだ。

 Amahi専用のiTunesサーバであるAmahitunesは、DAAPサーバの一種であるFireflyを利用しているため、Amahiからのストリーム配信に対するクライアントとしては、MacおよびPC上のiTunesだけに限定されず、Rythmbox、XMMS2、AmarokなどのDAAPクライアントも利用できる。更にはRokuのSoundbridgeといった市販のネットワークオーディオプレーヤもサポートされているのだ。このサーバ設定もWebインタフェースにて行え、その操作法は直感的で分かりやすい形式にまとめられている。なお同時サポート可能なクライアントの最大数は、各自のネットワーク速度で規定されると思っておけばいい。

 カレンダサーバについては、Mozilla Sunbirdなどのカレンダクライアントを用いることで、独自のホームカレンダを一括して出力することができる。この場合、家族のメンバ全員が自分のスケジュール情報をサーバに登録できるが、他のメンバに対する書き込みもできるようになっているので、例えば競合するスケジュールについてはメンバ間で必要な調整をすればいい。書き込まれたスケジュール情報のシンクロはスムースに行われ、Webカレンダとしての外観もなかなかいい線に達している。カレンダ上のデータは表形式に整理され、個々のスケジュール情報は異なるカラーで強調表示されるのだ。1つ残念なのは、他のメンバのスケジュール情報を変更する機能が現行のシステムに装備されていない点である。

 Webインタフェースにあるバックアップ用のステータスページからは、NFSベースのPersonal Backup Applianceを実行でき、これにはネットワークバックアップに必要な機能のみに限定したLinuxディストリビューションを用いて、クライアントマシンを管理者がブートする機能も装備されている。このシステムでは、クライアントバックアップシステムのネットワークブートにIntel PXEシステムを使用するが、PXEをサポートしていないクライアントの場合は、先の制限版Linuxディストリビューションを用いたブートCDでの起動で対処することになる。

 今回私は、所有するラップトップのバックアップを試して見るべく、BIOSにてPXEブートを有効化してからリブートを行ってみた。PXEがバックアップサーバを検出し、ネットワーク経由によるLinuxディストリビューションでのブートが実行されると、起動後のLinuxディストリビューションからは、BackupかReloadかの選択用プロンプトがユーザに提示される。そしてここでの目的に従ってBackupを選択すると、しばらく待たされた後、システム一式の圧縮バックアップがAmahiサーバ上に作成された。この実行例では旧型ハードウェアにて容量20GB分をバックアップするのに約40分を要したが、こうした所要時間は、バックアップ対象となるデータのタイプと量およびハードウェアの構成によって変わってくる性質のものだ。

 BINDをベースとしたAmahiのドメインサーバは、初回ブート時にインストールされてそのまま使用できるようになっている。これはDHCPサーバについても同様で、これを利用すると、各自のネットワークにてAmahiサーバを使用するためのクライアント設定を簡単化できる。セットアップは基本的にスムースに進行するはずだが、DHCP機能を有すルータを使用している場合は、どちらか一方のDHCPサーバをオフにしておかなくてはならない。この場合のお勧めはAmahi側のDHCPサーバを残すことで、その逆を選んだ場合、ネットワーク上の各マシンによるAmahiの各種Webページに対するアクセスを簡単化するには、Amahiのネームサーバを使用させるためのルータ設定が必要となる。Amahiは自身のネームサーバ転送にOpenDNSを使用するが、これを変更するには各自のISPのネームサーバ群を使用するようBINDを再設定しなくてはならず、おそらくその際にはサポートグループの支援が必要となるはずだ。

 Amahiのマップサーバは、驚嘆すべき完成度に仕上がっている。これはOpen Street MapOpen Arial MapといったオープンソースデータとOpen Layersのコードを組み合わせることで構築されているのだが、開発陣はGoogle Mapsに匹敵するレベルの完成度に仕上げることに成功したのだ。現状の不備としては、住所指定による検索や、A地点からB地点に移動するための道順指定などの機能が装備されていない点を挙げられるが、このプログラムは開発の初期段階にあることを考え合わせるべきだろう。同じくインストール作業も1クリックですべて完了とまではいかないものの、New Web Appボタンをクリックして、コードの解凍先を/var/hda/web-apps/my-new-appディレクトリと指定さえすれば、後はAmahiがApache設定へのエイリアス登録を自動で処理してくれる。

 同様にWordPressソフトウェアのインストール作業も簡単である。インストール後に行う、WordPressの動作およびテーマ設定の変更とユーザの追加は、ブラウザインタフェースから処理すればよく、実際に私の場合もわずか数分の作業で、実働状態のブログページを確保することができてしまった。ただし、外部のネットワークに公開するための設定については、先と同様にサポートグループの支援が必要となるだろう。こうしたMapsおよびWordPressのインストール手順については、amahi.orgのwikiが参考になるはずだ。

 私の環境は、未だ高速インターネット接続を導入しておらず、torrent系機能も滅多に使用しないのだが、Amahiにはtorrentサーバが同梱されている。この場合、ファイル群をサーバに追加するには、公開対象のファイルをtorrent共有にコピーするだけでよい。その後の処理はtorrentサーバがすべて面倒を見てくれる。同サーバの設定ページについてはhttp://torrentsにてアクセスできる。

 その他の同梱アプリケーションはごく基本的なものばかりで、おそらくこれらは、Amahiで何ができるかのデモンストレーションを目的としたものであろう。具体的には、Picturesにて共有した画像のスライドショー作成、サーバを用いたレシピ情報の格納と検索および、日々の体重管理といったアプリケーションである。

 このようにAmahiは強力かつ操作性に優れたツールではあるが、いくつかの不具合も残されている。私の使用経験においても、Dashboardページが正常に初期化されないという現象に間欠的に遭遇したが、既に開発陣はこの問題を承知しており、現在対策を進めているところだそうだ。またnamedおよびdhcpdサーバなどとの緊密な統合が達成されているが故のトラブルというものも存在し、例えば私の場合、AmahiマシンのNATサーバにてダイアルアップ接続式のラップトップを使用するといった、通常行われない形態でのネットワーク接続を試した際にこうした状況に陥ってしまった。これはAmahiとダイアルアップとが互いに異なる処理を試みるためであるが、こうした事例を見ると、ユーザの手を煩わせないデフォルトのルートおよびDNS設定という有り難い方針も、状況によっては痛し痒しといったところだろう。こうした問題に対する対策は、irc.freenode.netの#amahiチャンネルあるいは、メインのプロジェクトWebサイトにて運営されているwiki、メーリングリスト、電子メールにて得られるはずだ。私が試した限りでは、こうした場において開発陣は迅速かつ丁寧に対応してくれた。

 とは言うものの、適切なハードウェアを用いてAmahiのクリーンなインストールをした場合、それほど大きなトラブルには遭遇しないはずだ。同梱されるアプリケーション群の品揃えは、現状で役立つのはホームユーザだけに限られているものの、将来的な拡張も進められているところである。こうしたAmahiの位置付けとしては、ホームユースでのネットワークアプライアンスがどこまで行えるかを高いレベルで実証しつつある存在、と評していいだろう。

David Pendellは、過去23年に渡ってプログラミングおよびオーディオ/ビデオ編集などの各種コンピュータ作業に従事しており、Linuxの使用歴については、Red Hat 5.1を皮切りとして各種のディストリビューションの使用経験を有している。

Linux.com 原文(2008年11月7日)