FreeBSD on ThinkPad i1620
〜 ThinkPad i1620 で、FreeBSD を使おう 〜


VMwareを使おう


これは、皆さんご存知の超有名な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種類の接続方法を選ぶことが出来ます。

  1. Host-only

  2. 本体に仮想ネットワークデバイスを作成し、これと仮想PC上の仮想ネットワークデバイスを接続する。
    この場合、仮想PCから外部のネットワークにはアクセスできない。
     
  3. Bridged

  4. 仮想PCから、直接本体のネットワークデバイスをアクセスする。
    この場合、仮想PCから外部のネットワークに直接アクセスできる。
    外部からは、本体の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


すると、いくつかの質問が出てくるので、これに答えます。

  1. NetGraph機能を使って、仮想PCから外部にアクセスするかどうか

  2. 仮想PCのネットワーク接続方式で、Bridged と同等の接続方法を使うかどうかを答えます。
    [Yes] を選ぶと、次にネットワークデバイスの名称を聞いてくるので、[fxp0] などと答えます。
    私の場合は、ネットワークデバイスもネットワーク環境も無いので (泣)、[No] と答えました。
     
  3. 仮想ネットワークデバイスのIPアドレスとnetmask

  4. 最初の質問で、[No] と答えると、次にこれを聞いてきます。
    とりあえず、デフォルトのままとしました。
     
      IP address:    192.168.254.1
      Netmask:       255.255.255.0


これで、make は完了。続いてインストールします。

# make install


vmware は、root で suid されているので危険、などどメッセージが表示され、インストール完了です。
ここで一旦再起動するか、以下のコマンドを実行します。

# /usr/local/etc/rc.d/vmware.sh start


なお、インストール時に質問された項目の設定内容は、

  1. NetGraphを使うかどうかとそのデバイスの設定は、  /usr/local/etc/rc.d/vmware.sh
  2. 仮想ネットワークデバイスのIPとnetmaskの設定は、 /usr/local/etc/vmware/config
に書き込まれているので、あとで設定を変えたい場合は、このファイルを編集すればいいみたいです。

では、早速起動してみましょう。

% vmware


おや、なんか以下のようなメッセージが表示されて、終了してしまいます。

************************************************************
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.
************************************************************

なにやら、/compat/linux/proc がマウントされていない。詳しくは、linprocfs(5) を見ろ、と書いてあるので、
さっそく man linprocfs。
    :
    :
    :
良くわからんけど、/etc/fstab に、
 
linproc      /compat/linux/proc   linprocfs    rw   0    0
と書いておけばいいらしいでの、rootで、/etc/fstab を編集してから、マウントしておきます。
# mount linproc


これで準備完了、今度は無事に vmware が起動しました、
 
 


VMwareに、Windows98をインストール

では、早速 VMware になにかOSをインストールしてみましょう。
ここでは、Windows98をインストールしてみました。
 

Windows98のインストール

ゲストOSのインストールの前に、仮想PCの設定をおこないます。
これは、VMwareの起動時に最初に出てくるメニューから、あるいは、[File] → [Wizard...] を選べば、Configuration Wizard のウインドウが開くので、対話的に行ないます。
  1. Guest Operationg System  …… ゲストOSの選択

  2. 適切に選ばないと、仮想PCのパフォーマンスが落ちるそうです。今回は、Windows98を選びます。
     
  3. Virtual Machine Directory   …… 仮想PCの設定を保存するディレクトリの指定

  4. デフォルトは、~/vmware/win98/ などとなります。
    このディレクトリに仮想ディスクのイメージファイルがおかれるので、大きな空きが必要です。
     
  5. Disk Type Setting   ……… ハードディスクの種類を設定

  6. FreeBSDでは、実存する物理ディスクをつかう [Existing physical disk] ことは出来ないことになっているので、ここは仮想ディスク [New Virtual disk] を指定しておきます。(でも、Webで検索してみると、物理ディスクを使えている人も結構いるみたいです。)
     
  7. Virtual Disk Size Setting  ……… 仮想ディスクのサイズを指定

  8. デフォルトは、2000MBになっています。上限は2GB(2047MB)です。
    これ以上のサイズの仮想ディスクを使うには、Configuration Editor で指定する必要があります。
     
  9. CD-ROM Device Setting  ……… CD-ROM ドライブの設定

  10. ATAPI  CD-ROMの場合、デバイス名は [/dev/acd0c] になります。
    今回はCDからブートしてインストールするので、[Start with the CD-ROM connected] をチェックしておきます。
     
  11. Floppy Device Setting  ……… FD ドライブの設定

  12. デバイス名はデフォルトの [/dev/fd0] のまま。
     
  13. Network Setting   ……… ネットワークの設定

  14. [Host-only] を選択しておきます。
    Bridgedの接続方式をする場合も、必ず [Host-only] を選ばないとだめだそうです。


これで、ウィザードによる設定は終了です。
続いて、[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のインストール

さて、このままでは VGA の 640x480x256色の画面で、しかもとてつもなく描画速度が遅いため、使い物になりません。
これを解決するには、VMware Tools をインストールします。

VMware Tools の入ったフロッピーイメージが、

/usr/local/lib/vmware/lib/floppies/windows.flp
にインストールされているので、これを使いしょう。

VMware ではフロッピーイメージを直接扱うことができます。

  1. メニューから、[Devices] → [flopy0 (not connected)] → [Edit] を選択
  2. Type を、 [File] にし、Path を [/usr/local/lib/vmware/lib/floppies/windows.flp] にする。
  3. メニューから、[Devices] → [flopy0 (not connected)] → [Connect] を選択
これで、ドライブ A: をアクセスしてみましょう。ドライブ A: には、VMwareTools.exe というファイルがあるので、これをダブルクリックして、VMwareTools をインストールします。
 

続いて、グラフィックドライバを設定します。

「画面のプロパティ」→「設定」タグ→「詳細」→「アダプタ」タグ→「変更」→「特定の場所にあるすべてのドライバの……」→「すべてのハードウェアを表示」かつ「ディスク使用」→「A:\WIN9X」→「VMware SVGA (FIFO)」を選択。
『動かない可能性がある…』のメッセージには、「はい」
このあとで、再起動するようにメッセージが出てくるので、再起動


これで再起動後はなかり快適なパフォーマンスが得られるようになります。
画面サイズ、色数も、Xサーバの範囲内で変更可能です。

また、これでフルスクリーンモードで動かすこともできるようになります。
フルスクリーンモードで動かすには、以下のように起動するか、

 % vmware -display :0
起動後に、「Full Screen」ボタンを押せばOKです。
フルスクリーン状態からは、[Ctrl] + [Alt] + [ESC] でウインドウ状態に戻ります。
注意)
マシンによっては、フルスクリーンにするとVMwareが落ちることがあるそうです。

フルスクリーン状態で解像度を変更すると、VMwareが落ちます。解像度を変更したい場合は、ウインドウ状態で解像度を変更してから、フルスクリーンにしましょう。

テキストモードでのフルスクリーンはサポートされていません。例えば、フルスクリーン状態でDOS窓を開き、Alt + Enter を押すと、大抵VMwareごと落ちます。

フルスクリーン状態でWindows98を終了する時、解像度が切り替わるタイミングでVMwareが落ちます。

なお、実際にVMwareが落ちるかどうかは、使っているマシンとXのバージョンによるみたいです。まずは試してみましょう。;-)
 
 

ホストOS (FreeBSD) とのネットワークを設定

続いて、この仮想PCの Windows98 と 本体(FreeBSD) とでネットワークを構成してみます。
 

Windows98 は、インストール後は、DHCPサーバからIPアドレスを割り当ててもらうようになっています。
今回は、FreeBSDでDHCPサーバを立ち上げていないので、静的にIPアドレスを割り当ててみます。

 
OS FreeBSD  (ホストOS) Windows98 (ゲストOS)
ホスト名 mother daughter
IPアドレス 192.168.254.1 192.168.254.2
Windows98の設定を以下のように行います。
ネットワークコンピュータを右クリックしてプロパティを表示させます。
「ネットワークの設定」タグ→「現在のネットワークコンポーネント」 の 「TCP/IP ->AMD PCNET Family Ether Adapter」 を選択し、プロパティを表示します。
「IPアドレス」タグで、IPアドレスを設定します。
● IPアドレスを指定
192.168.254.2
255.255.255.0
 「識別情報」タグで、ホスト名を設定します。
コンピュータ名         daughter
ワークグループ        適当
コンピュータの説明   不要
設定後、再起動を要求されます。
Windows98の再起動後に、FreeBSD と、Windows98 とで、ping を実行してみましょう。
 
FreeBSD (適当なコンソールで) → ping 192.128.254.2 を実行
Windows98 (DOSプロンプトで)  → ping 192.168.254.1 を実行
これで、相互に繋がっていることが確認できました。
 
補足)
いちいち相手をIPアドレスで指定するのは面倒なので、ホスト名を使えるようにしてみます。
名前の解決には、DNSなどを立ち上げればいいのですが、面倒なので、hostsファイルを使うことにしましょう。

・FreeBSD の場合

/etc/hosts ファイルに、以下を追加します。

 
192.168.254.1  mother
192.168.254.2  daughter
・Windows98 の場合

C:/WINDOWS/HOSTS というファイルに以下を追加します。
インストール時点では、このファイルは存在しないので、新規に作成します。

 
192.168.254.1  mother
192.168.254.2  daughter
これで、ホスト名で相互にアクセスできるようになります。

 

Windows2000のインストール

Windows98のインストールがうまくいったので、今度はWindows2000 Proffesional をインストールしてみました。
といっても、Windows98のインストールの時と同じ要領で、特に問題も無くインストールできました。

インストール後は、Windows98の場合と同じようにVMware Tools をインストールしておきます。
Mware Tool のインストール後、再起動すると、新しいデバイスの検出が行なわれるので、SVGAドライバーをインストールします。その後、再度再起動すれば、解像度変更などが可能となります。
 


Sambaでファイル共有

Windowsとのファイルのやりとりといえば、Sambaでしょう。VMware上のWindowsの場合も然り。
というわけで、Sambaをインストールしてみました。
詳細は、こちら

なお、VMware で Samba を使う場合、こちらの注意事項も見ておきましょう。
 


複数のVMwareを同時に使用する

ところで、このようにしてインストールした VMware ですが、複数の仮想マシンを同時に起動できません。
2つ目の VMware を起動して、仮想マシンの Power ON ボタンをクリックすると、vmmon がどうのこうのというメッセージが表示され、そのままメニューに戻ってしまいます。

いろいろとWebで調べた結果、このようにすれば、複数のVMwareを同時に使用することができることがわかりました。
 


その他、いろいろ


 


「ホームページ」に戻る


Showzoh Fukunaga
メールはこちら……… fukuchan@mh1.117.ne.jp