2006年7月21日金曜日

Virtual PC 2004にFreeBSD 6.1-STABLEをインストール

Virtual PC 2004に、いつものように、FreeBSDをインストールしてみました。



Virtual PC 2004のインストールから、仮想マシン(バーチャルマシン)のセットアップまでは、こちらを参考にしてください。





■ FreeBSD 6.1-STABLE snapshots 200607



STABLEというのは、単語の意味としては「安定している」ってことなんですが、ここでは、ブランチ、つまりソフトウェア開発の系統につけられた、単なる名前のことで、別にこのOSの動作は安定していますよ、という意味ではありません。FreeBSDのブランチには、大きく分けて2つあります。活発に開発作業が進められていて新機能が次々に実装されていく「CURRENT」と、CURRRENTにて完成度が十分高まったと思われる機能が採用されていく、リリースバージョン(6.1-RELEASEなど)用に開発作業が進められていく「STABLE」です。どちらも、日々刻々とソースコードの変更が行われていくものなので、バージョン番号で特定はできなくて、何日の何時ころチェックアウトしたソースからビルドしたか、でバージョンを区別したりします。



リリースは、何ヶ月かに1度くらいの割合でしか行われないので、新しいハードウェアへの対応や、新機能の追加、不具合の修正が、STABLEやCURRENTの側で行われていたとしても、リリースバージョンがでるまでの期間待たされてしまう、というのももどかしいです。そのためか、最近では、「snapshots」というものがFTPサイトにアップロードされるようになっています。



たとえば、先週末あたりから、2006年7月のsnapshotsがダウンロードできるようになっています。たとえばこのへんから:



ftp://ftp.jp.freebsd.org/pub/FreeBSD/snapshots/200607/



ダウンロードできるのは、CD-ROMのイメージファイルになっています。
バージョン6系統の「6.1-STABLE」、バージョン7となる予定の「7.0-CURRENT」があります。また、Pentium4やAthlonなどのi386アーキテクチャ以外にも、amd64(x86_64とかとも呼ばれる)やsparc64、ia64(見たことないよ・・・)などもあります。



ただ、これは、十分な動作検証が行われた上でリリースされたものではないと思われるので、不具合がある可能性もあります。でも、これまでの経験では、STABLEブランチの場合、CVSUPで任意のタイミングでチェックアウトしたものを使って、それほど痛い目にあったこともないので、たいていはRELEASEはインストールせずに、その時点で最新のSTABLEをインストールしています。



今回は、Virtual PC 2004に、現時点で最新の、2006年7月のsnapshotsをインストールしてみました。



● CD-ROMイメージファイルのダウンロード



たとえば、このあたりから、ISO形式のCD-ROMイメージファイルをダウンロードできます。



ftp://ftp.jp.freebsd.org/pub/FreeBSD/snapshots/200607/6.1-STABLE-200607-i386-disc1.iso



サイズは約404MBあります。disc1のほうだけあれば最低限のインストールはできますので、disc2はいりません。
ファイルサイズの小さいbootonlyのほうを使っても、インストーラは起動します。そのため、ネットワークからファイルをダウンロードしながらインストールできそうなんですが、あいにくFTPサーバのほうに、ネットワークインストール用ファイルがおかれていないようで、やってみても「Can't find the `6.1-STABLE-200607' distribution on this FTP server」と言われてしまい、インストールできませんでした。RELEASEバージョンならbootonlyだけでネットワークインストールができるんですけどねぇ。



■ インストール



まずは、Virtual PC 2004で、仮想マシン(バーチャルマシン)を実行します。仮想マシンをセットアップするまでの話はこちら。





Virtual PC コンソールで、仮想マシンを選んでから、[起動]ボタンをクリックします。
ちなみに、仮想マシンが実行中の間は、Virtual PC コンソールの四角い絵の部分に、仮想マシンの画面が縮小表示されます。



Vpc18





BIOSの初期化画面などが表示されます。



Vpc19





しかし、すぐに、

Reboot and Select proper Boot device
or Insert Boot Media in selected Boot Device

と表示されます。これは、まだなにもOSをインストールしていないためで、起動するOSがねーよ、といってるわけです。



先ほどダウンロードしたISO形式のCD-ROMイメージファイルを使って、仮想マシンを起動させるようにします。CD-Rを焼く必要はありません。



[CD]メニューの[ISOイメージをキャプチャ]を選び、ダウンロードしたファイル6.1-STABLE-200607-i386-disc1.isoを指定します。ちなみに[物理ドライブの使用]を選べば、パソコンについているCD-ROMドライブがそのまま利用されるようになるので、本物のCD-ROMをドライブに入れて、そのCD-ROMで仮想マシンを起動させることができます。



Vpc20



そして、仮想マシンのウィンドウで、Enterキーなど何かのキーを押すか、または[操作]メニューの[リセット]を選ぶかすれば、CD-ROMから仮想マシンが起動します。



Vpc21





FreeBSDのブート時のメニューが表示されます。



Vpc22





まず、Country Selectionという画面になります。



Vpc23



Japanは、ずっと上の方の110番にありました(6.1-RELEASEのときは108番だったような?)。上向きの矢印のキーや、PageUpキーでスクロールして、「110 Japan」を選択してから、Enterキーを押します。





Vpc24



キーボードの配列を選びます。日本語キーボードを使っているなら、「Japanese 106」を選びます。



Vpc25



sysinstallを使って、OSを新規インストールしていきます。FreeBSDのインストール方法は、もう何年も前からほとんど変わっていないので、1度でもやったことがある人は、ぜんぜん楽勝でしょう。仮想マシンにインストールするのなら、失敗しても、何度でも気軽にやりなおせます(仮想マシンを消して、新しい仮想マシンを作ればいいのでね)。



ちなみに、FreeBSDをインストールする話は、これまで何度もやってて、探してみたら、こんなにありました。でも新規にインストールするのは、久しぶりかな?













私のいつもやり方は、まず、「Custom」を選択します。



Vpc26





次に「Partition」を選びます。



Vpc27



FDISK Partition Editorという画面になるので、ここでディスクのパーティション(FreeBSDだとスライスと呼ぶこともある)を設定します。



[C]キー(Create Slice)を押して、FreeBSDに割り当てるパーティションサイズを指定します。仮想マシンで、わざわざ1台のディスクをパーティションで分割して、複数のOSをインストールする必要もないので(複数のOSを使いたいのなら、仮想マシンを複数用意すればよい)、ディスクの全領域をFreeBSDに割り当てることにして、最初に表示されていた数字のままで、そのまま[Enter]キーを押して[OK]とします。



Vpc28





パーティションのタイプを指定します。これも、最初に表示されていた「165」のままにします。





Vpc29



↑↓のカーソルキーで、今作成したパーティション(Descにfreebsdと表示されている行)を選んでから、[S]キーを押して、Set Bootableにします。右端のFlagsの列に、Aと表示されます。



Vpc30



[Q]キーで終了します。
すると、Boot Managerをインストールするかと聞かれてきます。これは、複数のOSをインストールしない場合は無くてもかまわないので、インストールしないことにして、「Standard」を選びます。



Vpc31

実はこれまで私はいつも「None」を選んでいたのですが、今回の場合、なぜか「None」を選ぶと、FreeBSDインストール終了後、リセットしてもぜんぜんFreeBSDが起動してくれませんでした。FreeBSDのインストーラの仕様が変わったのかもしれませんし、そもそもVirtual PCで新規作成した仮想ディスクには、MBRにブートローダのコードが記録されていない、とかいうことかもしれません。

パーティションの設定が終わったので、今度は「Label」を選びます。
FreeBSD Disklabel Editorという画面になります。ここは、FreeBSDの中でのパーティションの設定を行います。



とりあえずですが、スワップパーティションに512MBを割り当て、残り全部をルート(/)パーティションとすることにしました。サイズ計算が面倒なので、先にスワップから割り当てます。



  1. 「Disk: ad0」の行が青く表示された選択状態になっているときに、「C」キーを押します。


  2. パーティションのサイズを指定します。最初に表示されていた数字を消して、「512M」と入力します。


  3. パーティションのタイプを指定します。スワップパーティションにするために、「Swap」を選びます。


  4. 先ほどと同様に、「Disk: ad0」の行が青く表示された選択状態になっているときに、「C」キーを押します。


  5. パーティションのサイズを指定します。残り領域すべてを割り当てるために、最初に表示されていた数字のままで、Enterキーを押します。


  6. パーティションのタイプを指定します。今度は「FS」を選びます。


  7. マウント先を指定します。ルートパーティションなので「/」と入力します。


  8. ルートパーティションに対して、SoftUpdatesを有効にします。↑↓のカーソルキーで「ad0s1a  /」の行が青く表示された選択状態にしておいてから、「S」キーを押します。「UFS2」という表示が「UFS2+S」へ変化します。


以上で、こんな感じになります。確認したら、「Q」キーを押します。



Vpc32



以上で、FreeBSDパーティションの設定は完了です。



今度は、インストールするものを選びます。「Distributions」を選んだあと、↓カーソルキーで一番下へ移動してから、「Custom」を選択します。ユーザーのタイプにあわせて、あらかじめレシピが用意されているのですが、いったい何が入るのかじっくり見ていくのがめんどくさいので、私は、いつもCustomにして、自分で選ぶようにしています。



Vpc33



カーソルキーでインストールしたいものの行を選択してから、スペースキーを押して、Xマークをつけていきます。
私の場合はいつも、base、dict、doc、games、info、manをインストールします。さらに、最近のFreeBSDでは、kernelsも必ずインストールしなければなりません。CPUが1個の場合用のカーネルと、複数個用のカーネル(SMPカーネル)の、どちらかをインストールするか、選べるようになっています。



kernelsを選ぶと、別画面が表示されるので、そこで、「GENERIC」を選びます(厳密にいえば、これはユニ(単一)プロセッサ用のGENERICカーネルで、もう1つは、SMP用のGENERICカーネルなので、どっちもGENERICといやぁGENERICなんですね)。



Vpc34

ちなみに、両方ともインストールすると、/boot/kernel/* にSMPカーネルがインストールされ、/boot/GENERIC/*がプロセッサ1個の場合用のカーネルがインストールされていました。普通にブートすると、SMPカーネルのほうがブートします。ブート時のメニューでどのカーネルから起動するかを選んだりする機能は、今のところ見当たりませんでしたが、コマンドラインで操作するモードに抜けたあと、unload、boot /boot/GENERIC/kernelとかやれば、ブートするカーネルを切り替えられます。

インストールするものは、こんな感じになりました。ちなみに、OSをインストールしたあとからでも、sysinstallコマンドを実行すれば、追加でインストールできます。



Vpc35



「Media」を選びます。CDからインストールするので、「CD/DVD」をインストールします。前述のように、snapshot版の場合、現時点では、FTPサイトでファイルが配布されていないため、FTPインストールはできませんでした。



Vpc36



以上で、FreeBSDをインストールするためのオプション指定はすべておしまいです。「Commit」を選んで、実際にインストール作業を開始してもいいよ、とインストーラに指示します。



Vpc37





本当にインストールを開始していいのか、確認メッセージが表示されるので、[Yes]を選びます。



Vpc38



あとは、勝手にインストール作業が行われていくので、画面を眺めているだけです。



ファイルシステムが作成されたり・・・



Vpc39



ファイルがハードディスクにコピーされたり・・・



Vpc40



しばらくしてファイルのコピーが終わると、さらに設定作業を行うか聞かれます。インストール後の設定を行うために、[Yes]を選びます。ちなみに、今ここでしか設定できないわけではなくて、インストールしたOSで起動したあとでも、そのOS上でsysinstallコマンドを実行して「Configure」を選べば、同じことができます。



Vpc42



なにはともあれ、「Root Password」を選んで、rootアカウントのパスワードを設定します。



Vpc43



登録したいパスワードを、2回、入力します。



Vpc44



rootアカウント以外の、通常利用するためのアカウントを登録します。「User Management」を選びます。そして「User」を選びます。



Vpc46





こんな感じで、新規登録するユーザーアカウントの情報を設定します。



Vpc45





登録完了後は、Exitを選んで、ユーザー登録の画面を終了します。



「Time Zone」を選びます。パソコン内蔵の時計の時刻がUTC(Coordinated Universal TIme。協定世界時という、世界で標準の時刻のこと。グリニッジ標準時=GMTとだいたい同じ。ところでなんでCUTじゃないんだろう?別の意味のCUTがすでにあるのかな)にあわせられていますか?と聞かれているのですが、普通は、そうはなっていなくて、国ごと地域ごとの時刻にあわせられています。なので、[No]を選びます。



Vpc47



「Asia」を選びます。



Vpc48



「Japan」を選びます。



Vpc49



それってJST?って聞いてくるので[Yes]を選びます。JSTは、Japan Standard Timeの略で、日本標準時のことです。JSTは、UTCよりも9時間すすんでいます。



Vpc50



ネットワークの設定をします。「Networking」を選びます。



「Interfaces」を選択した状態で、スペースキーを押します。



Vpc51





Virtual PCでエミュレーションされるNIC(ネットワーク・インターフェイス・カード。イーサネットなどのこと)は、「de0」になるようです。というわけで、de0を選択します。



Vpc52



IPv6 configurationする?と聞かれるので、「No」と答えます(笑)。



Vpc53





DHCPで設定する?と聞かれます。
DHCPサーバがある環境では、「Yes」と答えるといいかもしれません。

デフォルトの設定では、Virtual PCでエミュレートされるNICは、ブリッジ接続になっています。つまり、ホストOSが走っているパソコンが接続しているのと同じネットワークに、そのまま接続される感じになっていて、NATにはなっていません。Virtual PCでNATを試したことはないのですが、Virtual PCコンソールで[設定]ボタンを押して、「ネットワーク」を選択し、右の「アダプタ」のところのリストボックスを見ると、一応、NATが選べるようにはなっています。

Vpc54





ホスト名、ドメイン名、IPアドレスなどを指定します。



Vpc56



次は、Mailサーバの設定などをしてみますか。「Mail」を選択します。
最近はセキュリティ対策をきちんとしろ!とうるさく言われるようになっていて、使ってもいないネットワークサービスは起動しないようにすべき、とされています。このFreeBSDで、LANやインターネットからメールを受信する必要がない場合、「Sendmail local」を選びます。このようにしても、一応sendmailは実行されます。ただし、ネットワーク側からのメール送信を受け付けなくなり、ローカルホスト内で送信されるメールのみ、受信されます。



Vpc57





すべての設定作業がすんだら、「Exit」を何度か選び、sysinstallの最上位のメニュー画面まで戻ります。そして、「Exit Install」を選びます。



Vpc60





終了確認メッセージが表示されます。再起動するのでCDを抜きなさいと言われるています。



Vpc61





Virtual PCの仮想マシンでCD(といっても仮想的なCD)を取り出すには、[CD]メニューの中にある[○○○○○を開放する]を選びます。



Vpc62



これで、インストール作業はおしまい。



Virtual PCの仮想マシンで、FreeBSDが起動中・・・





Vpc66





■ 2006年8月2日追記



なかなか時間がとれなくて、ほとんどVirtual PC上のFreeBSDは動かしていないのですが、時間が狂いまくりますね。VMware PlayerでFreeBSD 6を動かしたときのように、少し設定を加えてみたりしましたが、一向に改善されません。



昔、Virtual PCでFreeBSDを動かしたときは、たしかFreeBSDのバージョンが5.xだったはずなので、今でも、5.5-RELEASEとか5-STABLEなら、時計まわりは大丈夫かもしれません。



最近FreeBSDのstableとかcurrentのメーリングリストを流し読みしたときに、VMwareなどの仮想マシンではないのですが、やっぱりcalcru: runtime went backwards問題がでてました。



あれれ、6.1のtodoリストにもあがってますね。



http://www.freebsd.org/releases/6.1R/todo.html



ということは、FreeBSD6のカーネルの問題か。





0 件のコメント:

コメントを投稿