FreeBSD on
ThinkPad i1620
〜 ThinkPad i1620 で、FreeBSD を使おう 〜
これは、皆さんご存知の超有名なPCエミュレータ、VMware
の導入時の記録です。
VMware は、Linux 用のアプリケーションなので、FreeBSD は動作対象外になっています。
が、FreeBSD には、Linux エミューレーション機能という、Linux の実行ファイルをそのまま動かすことのできる機能が備わっており、その機能を有効にしておけば、VMware
を動かすことができます。
現在、VMware は version 3.1 になっているようです(2002/05)が、FreeBSD
の port で用意されているのは、2.0.4 のものなので、これをインストールしてみました。
なお、Linuxエミュレータの導入や、VMwareのライセンスファイルの取得については特に説明しないので、他のWebページをあたってください。m<__>m●VMware のネットワークについて
VMware 上の仮想PCと本体のPCとは、仮想ネットワークにより接続することができますが、その際に以下の2種類の接続方法を選ぶことが出来ます。
VMwareでは、2番目の接続方法を推奨しているようですが、FreeBSDでは、2番目の方法は使えないことになっています。
が、1番目の方法で、2番目と同じ運用ができるようにハッキングしてあるので、機能的には両方の接続方法を利用できるそうです。
インストールは、port から行うのがお手軽です。root になって作業を行ないます。
あらかじめ、以下のファイルをダウンロードして、/usr/ports/distfiles/
にコピーしておきます。
(常時接続な環境なら、make時に勝手にダウンロードしてくれるので不要ですね)
VMware-2.0.4-1142.tar.gz
vmmon-freebsd-0.98.tar.gz
vmnet-freebsd-0.21.tar.gz
※これらのファイルがどこにあるかは、http://www.FreeBSD.org/ja/ports/index.html から検索するなり、/usr/ports/emulators/vmware2/Makefile を見るなりしてください。
そして、/usr/ports/emulators/vmware2/ ディレクトリにて、make します。
# cd /usr/ports/emulators/vmware2
# make
すると、いくつかの質問が出てくるので、これに答えます。
これで、make は完了。続いてインストールします。
# make install
vmware は、root で suid されているので危険、などどメッセージが表示され、インストール完了です。
ここで一旦再起動するか、以下のコマンドを実行します。
# /usr/local/etc/rc.d/vmware.sh start
なお、インストール時に質問された項目の設定内容は、
では、早速起動してみましょう。
% vmware
おや、なんか以下のようなメッセージが表示されて、終了してしまいます。
************************************************************なにやら、/compat/linux/proc がマウントされていない。詳しくは、linprocfs(5) を見ろ、と書いてあるので、
It seems Linux procfs is not mounted on /compat/linux/proc.
VMware does not work without Linux procfs mounted.For details, see linprocfs(5) manpage.
************************************************************
と書いておけばいいらしいでの、rootで、/etc/fstab を編集してから、マウントしておきます。
linproc /compat/linux/proc linprocfs rw 0 0
# mount linproc
これで準備完了、今度は無事に vmware が起動しました、
これで、ウィザードによる設定は終了です。
続いて、[Settings] → [Configuration Editor] を選んで、詳細設定を行ないます。
いよいよインストールです。
Windows98 の CD を CD-ROM にセットして、Power On ボタンをクリック。
ちゃんと設定できていれば、CD-ROM ブートするはすです。
起動時にメニューがでてくるので、[2. Boot from CD-ROM] を選択、次に、[1.
Start Windows 98 Setup from CD-ROM] を選択します。あとは、普通にPCにインストールするときと同じ手順で進んでいきます。
途中で質問に答えたり、再起動したりと、だいぶ時間がかかります。
余談)
i1620 (celeron 500) の場合、実機では30分ほどのインストールが、VMware では1時間以上かかりました。ちなみに、インストール中は、VMware にマウスをグラブされてしまい、VMware のウインドウから他のウインドウにマウスを動かせなくなってしまいます。こんなときは、[Ctrl] + [Alt] + [ESC] を押すと、グラブが解除されます。(なお、この時の Ctrl キーですが、X の設定で、Ctrl と Caps を入れ換えていた場合でも、もとの位置のCtrlキーを押す必要があります。)
この後何度か再起動のあと、EMM386 がどうとかいうメッセージが表示されて固まるので、ここですかさず
RESET します。そして、Windows98 の起動中に、F8 キーを連打して起動メニューを表示させます。(表示できなかったら、再度リセットして何度もトライしましょう)
無事メニューがでたら、3 の safe mode で起動します。
Windows98 が Safeモードで起動したら、メモ帳 (NOTEPAD.EXE)などで、C:\CONFIG.SYS
を編集します。
EMM386の書いてある行を消すか、先頭に REM を書き加えます。
そして再起動します。
REM device=C:\WINDOWS\EMM386.EXE RAM
今度は正常に Windows98 が起動しますが、この時はとてつもなく起動に時間がかかります。画面に
nslfunc.exe とか country.sys とかが表示されたまま固まったように見えますが、不安にならずに気長に待ちましょう。
次回からは、ちょっとはましになるようです。
VMware Tools の入ったフロッピーイメージが、
/usr/local/lib/vmware/lib/floppies/windows.flpにインストールされているので、これを使いしょう。
VMware ではフロッピーイメージを直接扱うことができます。
続いて、グラフィックドライバを設定します。
「画面のプロパティ」→「設定」タグ→「詳細」→「アダプタ」タグ→「変更」→「特定の場所にあるすべてのドライバの……」→「すべてのハードウェアを表示」かつ「ディスク使用」→「A:\WIN9X」→「VMware SVGA (FIFO)」を選択。
『動かない可能性がある…』のメッセージには、「はい」
このあとで、再起動するようにメッセージが出てくるので、再起動
これで再起動後はなかり快適なパフォーマンスが得られるようになります。
画面サイズ、色数も、Xサーバの範囲内で変更可能です。
また、これでフルスクリーンモードで動かすこともできるようになります。
フルスクリーンモードで動かすには、以下のように起動するか、
% vmware -display :0起動後に、「Full Screen」ボタンを押せばOKです。
注意)
マシンによっては、フルスクリーンにするとVMwareが落ちることがあるそうです。フルスクリーン状態で解像度を変更すると、VMwareが落ちます。解像度を変更したい場合は、ウインドウ状態で解像度を変更してから、フルスクリーンにしましょう。
テキストモードでのフルスクリーンはサポートされていません。例えば、フルスクリーン状態でDOS窓を開き、Alt + Enter を押すと、大抵VMwareごと落ちます。
フルスクリーン状態でWindows98を終了する時、解像度が切り替わるタイミングでVMwareが落ちます。
なお、実際にVMwareが落ちるかどうかは、使っているマシンとXのバージョンによるみたいです。まずは試してみましょう。;-)
Windows98 は、インストール後は、DHCPサーバからIPアドレスを割り当ててもらうようになっています。
今回は、FreeBSDでDHCPサーバを立ち上げていないので、静的にIPアドレスを割り当ててみます。
Windows98の設定を以下のように行います。
OS FreeBSD (ホストOS) Windows98 (ゲストOS) ホスト名 mother daughter IPアドレス 192.168.254.1 192.168.254.2
ネットワークコンピュータを右クリックしてプロパティを表示させます。
「ネットワークの設定」タグ→「現在のネットワークコンポーネント」 の 「TCP/IP ->AMD PCNET Family Ether Adapter」 を選択し、プロパティを表示します。
「IPアドレス」タグで、IPアドレスを設定します。Windows98の再起動後に、FreeBSD と、Windows98 とで、ping を実行してみましょう。● IPアドレスを指定「識別情報」タグで、ホスト名を設定します。
192.168.254.2
255.255.255.0コンピュータ名 daughter設定後、再起動を要求されます。
ワークグループ 適当
コンピュータの説明 不要
FreeBSD (適当なコンソールで) → ping 192.128.254.2 を実行
Windows98 (DOSプロンプトで) → ping 192.168.254.1 を実行これで、相互に繋がっていることが確認できました。
補足)
いちいち相手をIPアドレスで指定するのは面倒なので、ホスト名を使えるようにしてみます。
名前の解決には、DNSなどを立ち上げればいいのですが、面倒なので、hostsファイルを使うことにしましょう。・FreeBSD の場合
/etc/hosts ファイルに、以下を追加します。
・Windows98 の場合
192.168.254.1 mother
192.168.254.2 daughterC:/WINDOWS/HOSTS というファイルに以下を追加します。
インストール時点では、このファイルは存在しないので、新規に作成します。これで、ホスト名で相互にアクセスできるようになります。
192.168.254.1 mother
192.168.254.2 daughter
インストール後は、Windows98の場合と同じようにVMware Tools をインストールしておきます。
Mware Tool のインストール後、再起動すると、新しいデバイスの検出が行なわれるので、SVGAドライバーをインストールします。その後、再度再起動すれば、解像度変更などが可能となります。
なお、VMware で Samba を使う場合、こちらの注意事項も見ておきましょう。
いろいろとWebで調べた結果、このようにすれば、複数のVMwareを同時に使用することができることがわかりました。
なお、[Undoable] の場合、書き込み情報のファイルは、Configuration Editor
の Misc で指定したディレクトリに保存されます。
[Nonpresistent] の場合、書き込み情報のファイルは、/var/tmp、ないしは環境変数
TMPDIR で指定したディレクトリに保存されます。
いずれもかなり大きなファイルになるので、ホストOSのディスクの空き容量には気を付けましょう。
| foo.cfg | Configuration ファイル |
| foo.dsk | 仮想ディスクのイメージファイル |
| foo.nvram | BIOS 設定のファイル |
| foo.log | ログファイル |
つまり、この4つのファイルをコピーすれば、仮想OSをバックアップにすることが出来ます。(ログファイルは仮想マシンの起動時に生成されるので、実際に必要なのは他の3つのファイル)
cfgファイルは、Configuration Wizard や Configuration Editor で設定した内容やその他の情報が記述されたテキストファイルで、エディタで修正が可能です。
なお、[Plain Disk] の場合は dsk ファイルの代わりに pln というファイルと dat というファイルが作られます。pln ファイルは Plain Disk の管理情報が記述されたテキストファイルで、dat ファイルがディスクのイメージファイルです。dat ファイルは 2GB 毎に1つ作られます。