BSDの血筋を引くFreeSBIE 2.0

昨年、イタリアのFreeBSDユーザグループGUFIが、FreeBSDオペレーティングシステムに基づいたライブCD開発のためにFreeSBIEプロジェクトを再開させた。4ヶ月を超える開発期間と4回のベータリリースを経て今月、同プロジェクトはFreeSBIE 2.0をリリースした。Clint Eastwoodというコード名のこのライブCDは、最近のFreeBSD 6.2リリースがベースになっており、BSDの世界を体験し、その仕組みを習得するには理想的なプラットフォームである。

668MBのISOイメージはインストールすると1.3GBのソフトウェアになる。そこに含まれる450のパッケージには、デスクトップ環境のXfceとFluxbox、WebブラウザFirefox(バージョン1.5.0.8)、P2PクライアントaMule、インスタントメッセージング(IM)およびIRCソフトウェアのGaimとXChat、電子メールクライアントThunderbird、ワードプロセッサAbiWord、表計算ソフトウェアGnumeric、PDFビューアXpdf、ビデオおよびオーディオ再生用としてMPlayer(いくつかのテーマ付き)とBeep Media Player、画像処理のGIMP、ベクターグラフィック処理のInkscape、画像ビューアとしてGQViewとgThumbなどがある。また、MP3再生に必要な各種コーデックも含まれている。ネットワーク管理用としてはgFTPといったアプリケーションのほか、Ettercap、Wireshark、NmapFEを始めとするいくつかのネットワーク監視ツールが用意されている。

ただ少し残念なのは、簡単に使えるハードディスクインストーラBSDInstallerをFreeSBIEチームが切り捨ててしまっている点だ。

FreeSBIEの使い方

BSDとLinuxディストリビューションの違いは、ライブCDの挿入時点からはっきりと現れる。FreeSBIEライブCDの読み取りが終わると、メニュー画面に2つの選択肢が表示される。1つはメインのブートメニューに進むもの、もう1つはブートパラメータの調整を行なうものだ。後者を選んだ場合はhelp cheatcodesコマンドの実行により、利用できるすべてのコードがそれぞれの簡単な説明と設定可能な値の範囲とともに表示される。たとえばFreeSBIEにハードディスクのスキャンとパーティションのマウントを行わせるには、set freesbie.mountdisks=yesを実行すればよい。必要なパラメータを設定し終えたら、bootコマンドの実行によってFreeSBIEをメモリに展開する。

一方、ブートメニューに進むことを選んだ場合は、BSDにおいてGRUB相当の役割を果たすBTXローダが起動される。BTX自体にもいくつかオプションがあり、ACPIを無効にしたり、セーフモードまたはシングルユーザモードでブートしたりすることも可能だが、通常はデフォルトのままで問題ないはずだ。なおFreeSBIEのブート中は、フルスクリーンのグラフィックの背後に隠れてブートメッセージが一切見えない。

ブートにかかる時間はマシンの処理能力と物理メモリの容量によって異なるが、クロック周波数がそれぞれ1.7GHzと1.3GHzの私の古いCeleronマシン2台(1.3GHzのほうはメモリ容量わずか256MB)でも、耐えられないほど遅くはなかった。ほとんどのライブCDと同様、システムがブートし終わると自動的にログイン処理に進み、この場合はfreesbieユーザとしてログインが行われる。ただし大半のライブCDと違うのは、デスクトップ環境を使う場合はstartxの実行によって自分で起動しなければならない点だ。デフォルトのデスクトップはXfceになっているので、Fluxboxを使いたければ/home/freesbie/.xinitrcファイルを編集してexec startxfceの部分をexec fluxboxに変更する。またFluxboxの場合、メニュー中にシャットダウンや再起動のボタンはあるが、デスクトップ環境からログアウトしてシェルに移るだけである。本当にマシンをシャットダウンするにはshutdown -h nowコマンドを実行しなければならない。

ハードウェア面について言うと、私の環境ではFreeSBIEによって無線ネットワークアダプタ、ATIグラフィックカード、Samsung製17インチLCDが検出され、適切な設定が行われた。しかし、私の元にあったUSBマウスの検出はいずれも失敗した。ただし、IBMノートPCのタッチパッドや内蔵マウス(トラックポイント)はうまく検出された。

FreeSBIEのデスクトップ ― クリックで拡大
デスクトップ環境は読み込みにそれほど時間がかからず、「ALT+F9」キーによって表示可能な9番目の仮想端末(コンソール)上で実行される。デスクトップ環境ではConkyというライトウェイトなシステムモニタが実行されているが、スワップの使用量が0になっていても驚く必要はない。BSDは独自のスワップ領域を使用するため、LinuxのスワップパーティションはBSDにとっては役に立たないのだ。

FreeSBIEが立ち上がると、Firefoxが起動され、ひと通りのことが記されたリリースノートのローカルコピーやハンドブック、FAQページが表示される。FirefoxはAdblock拡張機能を実行しているほか、終了時にはプライバシーデータを消去するかどうかを確認するようにプログラムされている。しかし残念なことに、FirefoxはFreeSBIEのなかで最も不安定なアプリケーションである。Wiresharkのような特定のネットワーク監視アプリケーションを実行していると、Firefoxはたびたびクラッシュしたり、起動できなかったりしたのだ。

ネットワーク処理に関して言うと、私のノートPCでは、たとえFreeSBIEによってPCMCIAの無線カードの検出と設定が上手く行われても、有線ネットワークアダプタがデフォルトのデバイスに選ばれていた。このことに気付いたのは、Xfceのタスクバー上にある、トラフィック量の出入りを表示するnetloadアプレットを実行しようとしたときだった。そのため、無線デバイスであるwi0のトラフィックを見るようにわざわざ設定し直さなくてはならなかった。もう1つの問題は、デフォルトユーザとしてメニューからネットワーク監視アプリケーションを実行しても無意味なことである。というのも、こうしたアプリケーションの実行にはスーパーユーザの権限が必要だからだ。FreeSBIEでは、一般ユーザが管理者としてプログラムを実行するためにsudoを用いる。あと問題のあるアプリケーションといえば、「Accessories」メニューにあるgDeskletsくらいだろう。これは実行そのものが拒否される。

永続性のあるストレージとプライバシー

FreeSBIEでは、savebackupスクリプト(/usr/local/bin/savebackup)を用いて、ライブCDの環境で作成したデータを外部デバイスに保存することが可能だ。このデータは、その後のライブCDのブートアップ時にリストアすることができる。このスクリプトは、保存が必要なすべてのディレクトリとファイルが列挙されたbackup.lst(/etcディレクトリの下にある)を使用する。backup.lstファイルの作成は難しくなく、それぞれのディレクトリまたはファイルを1行ずつ書き出すだけである。リリースノートによるとサンプルファイルとして/etc/defaults/backup.lstファイルが存在するらしいのだが、見つからなかったので、ホームディレクトリ直下の作業ディレクトリを保存するためのリストを自分で作成した。この/etc/backup.lstファイルに記述したのは、/home/freesbie/work/という1行だけだ。savebackupスクリプトを使ってこの作業ディレクトリを、da0として認識され利用可能なUSBドライブに保存しようとしたのだが、スクリプトを実行したところ、BSDが書き込めるパーティションが必要とのエラーメッセージが表示された。ただし、どんな種類のパーティションがサポートされているのかといった詳しい情報はなかった。そこで、ハードディスクのFreeBSDパーティションで試すことにした。ad0s1にバックアップを取るように書き換えてsavebackupスクリプトを実行すると、このパーティション(BSD用語では「スライス」)上のFreeSBIEというディレクトリ内にfreesbie_20070116_1217.tar.bz2というタイムスタンプ入りの圧縮ファイルが作成された。このようにして保存されたファイルはブートアップ時に自動的にリストアされるが、restoredataスクリプト(/usr/local/sbin/restoredata)を用いて手動でリストアを行うことも可能だ。

またFreeSBIEにはTorPrivoxyという、オンラインでプライバシー管理を支援するツールも用意されている。Torはネットワーク接続を暗号化し、いくつかのルータを介した慎重なルーティングを行う。またPrivoxyはTorとの連携により、コンテンツのフィルタリング、クッキーの管理、ポップアップの除去を行う。これらのツールを機能させるには、開始パラメータを指定してfreesbie_torスクリプト(/usr/local/bin/freesbie_tor)を実行すればよい。このスクリプトの実行には多少時間がかかり、こうしたツールと連携するようにFirefoxの設定が行われる。

まとめ

デスクトップにいる限り、FreeSBIEにはLinuxディストリビューションとそれほど変わるところがない。FreeSBIEには、さまざまなユーザにとって役立つ適切なアプリケーションがバンドルされている。しかし、その中心にあるのは純粋なFreeBSDであり、これによってFreeSBIEは高い安定性を確保している。ただFreeSBIE開発者は、新規ユーザによる利用を支援するためにFreeBSDマニュアルのバンドルを考慮する必要がある。とはいえ、誰であれBSD系OSに触れてみたいと思うLinuxユーザには、このFreeSBIE 2.0をお勧めしたい。

NewsForge.com 原文