仮想化ソフトウェアの1つVirtualBoxで作成した仮想マシンのゲストOSには、様々なOSをインストールできますが、このページでは、BSD/UNIXディストリビューション(ディストロ)の中から任意に抽出し、当サイトにおいてVirtualBox上で検証したBSD/UNIX系OSの内、FreeBSDのインストール及び起動について記します。
今回は、FreeBSD 10.0 RC4(FreeBSD-10.0-RC4-i386-disc1.iso)を使用させて頂きました。
FreeBSDは、特許絡みで386BSD、4.3BSD Net/2、最終的に4.4BSD-Liteをベースとした初版オープンソースFreeBSD 2.0が1994年11月リリースされるに至ったBSD系OSです。
FreeBSD 5の開発に当たり、マルチコア対応の技術的相違からFreeBSD 4をベースとして派生したものにDragonFly BSDがあります。
他方、386BSDからフリー且つ高速でセキュア、より多く移植することを目指して直接フォークしたものにNetBSDがあり、NetBSDからセキュリティ強化を目指し派生したものにOpenBSDがあります。
また、Mac OS Xは、Mach 3.0とFreeBSDのカーネルやNetBSDの機能の一部をベースにApple社が開発するPOSIX準拠のオープンソースDarwinというOSをその基礎としています。
ちなみに後にApple社がオープンソースDarwinの配布を取りやめたのに伴い、OpenDarwinプロジェクトが、その後継としてPureDarwinプロジェクトが創設され、オープンソースとして継続開発すると共にQEMUやVMware Player/Fusion用のisoイメージを含むアプライアンスが無償配布されています。
それぞれ、PowerPC用だけでなく、Intel Mac用もあり、このIntel Mac用は、Intel Mac以外の32ビットx86でも動作、x86版の開発は既に終わっており、より新しいものは、x86_x64(64bit)版となっている模様です。
FreeBSDは、QEMUでは32MB以上で、VirtualBoxでは、48MB以上で起動を確認できました。
ちなみにVirtualBoxでは、うまくインストールできなかったNetBSDとスムースではないものの、VirtualBoxでも何とかインストールできたNetBSDからセキュリティ強化を目指し、派生したOpenBSDは、QEMUで試したところメモリ24MB以上で起動しました。
=> VirtualBoxでも代替策としてVirtualBoxマネージャからではなく、端末からVBoxSDLコマンドを使用してNetBSDをインストール及び起動する方法がありました。
尚、各種アプリケーションが必要とするメモリ量は考慮していません。
また、特に指定がない限り、ここで示すRAM値は、各仮想化ソフトウェアでの仮想マシン作成時に指定した値であり、少なくとも一定以上のRAM値を指定した場合においては、そこから仮想化ソフトウェアが消費するメモリを差し引いた値が、ゲストOSで利用可能なRAM総容量として割り当てられているようです。
FreeBSDは起動メニューからインストールとLiveCDを選択でき、ログイン直後の画面表示は、LiveCDに対し、インストール時には、プロンプトにボリューム名が加わるだけなのでスクリーンショットについては、LiveCDのみ掲載しています。
FreeBSD 10.0 RC4のLiveCDは、オートログインしませんが、login:プロンプトで[root]、password:は未入力とし、[Enter]キーでログインできます。
FreeBSDをインストールする際、途中オプションでdoc.txz、src.txzを追加すると最後の最後[Archive Extraction]画面のsrc.txzの展開で全体の進捗が90%程度までいった辺りで失敗したのでdoc.txz、src.txzを追加せずにデフォルトのまま、インストールしたところ問題なく完了しました。
ちなみにFreeBSDベースで軽量且つシステム管理者向けのシステムチューニングやレスキュー用を意図したLiveCDディストリビューションの1つとしてウクライナ発のFrenzyプロジェクト及びFrenzyがあります。
尚、スクリーンショットのFrenzy 1.4 Lite(frenzy-1.4-lite-en.iso)は、FreeBSD 8.3ベースです。
Frenzyのデフォルトのshellは、tcshです。
尚、FreeBSDに含まれるツールからも作成可能でFreeBSDベースのLiveCDとしてFreeSBIEがあります。
FreeBSDのパッケージマネージャというかパッケージの管理は、pkg_add/pkg_info/pkg_delete/pkg_versionといった[pkg]と[アンダースコア]に続く[ pkg_ ]といったコマンドで行います。
pkg_addにrオプションを付けて[ pkg_add -r ]とするとFreeBSDオリジナルFTPサイトからパッケージを取得できるようですが、ミラーサイトから取得する場合には、環境変数[ PACKAGESITE ]に登録します。
FreeBSD 10.0から[ pkg_ ]ではなく、次世代のpkgという意味のpkgngと呼ばれる、うしろにアンダースコアの付かない[ pkg ]コマンドに必要に応じて[install]/[info]/[delete]...といったサブコマンドを付与するコマンドへの移行をしていますが、まだ、開発段階にあるようなので完成するまでは、旧来の[ pkg_ ]系コマンドを使うのが無難でしょう。
また、FreeBSDには、Ports Collectionもあり、各ソフトウェアごとのダウンロードすべきソースやパッチ情報のリスト、makefileなどが一式置いてあるディレクトリにおいて[make install]することもできます。
尚、FreeBSDのデフォルトのログインシェル(shell)は、csh、起動時に読み込む初期ファイルは、ホームディレクトリの[ .profile ]なのでログイン時、常に環境変数を有効にしたい場合は、ここで設定し、その変数を[ setenv PACKAGESITE (HTTP/FTPサイトURI) ]などとしておきます。
FreeBSDでも任意のデスクトップ環境やウィンドウマネージャを利用することもできるでしょうが、FreeBSD専用のデスクトップ環境ディストリビューションPC-BSDもあり、PC-BSDのインストーラでは、サーバ用としてFreeBSD、クライアント・デスクトップ用としてPC-BSDの何れをインストールするかを選択できるようになっています。
PC-BSD 8.2(PCBSD8.2-x86-bootonly.iso)については、当サイト検証環境では、グラフィカルなインストーラが起動し、[インストール]のところまではいきましたが、ネットワーク設定を間違えたのか、今のところインストールできていません(が、そもそも、かなり重そうなので以後も試さないかもしれません)。
スクリーンショットは、プログレスバーのインジケータが0%時点のものです。