VMware上のLinux


VMWare + Debian(woody) + 2.4 kernel
固有の注意点など

更新履歴


VMwareについては「言わずと知れた」ということで、いきなり省略。ゲストOSにWindowsを入れてウィルスクリックしまくり、という遊びも一部で流行ってるようだが(もちろんお仕事でやってる方々もいます)、私の場合はネットワーク実験に使っている。なーどと書くとカッコイイのだが、実際はただただ限りなく無意味に近く、数多くのOSが飼い殺されているのであった。

さて、今回説明するのは 3.0 の for Windows だが、私は以前のバージョンから、ホストOSがWindowsのヤツしか使ったことが無い。Windows はキライでも使わざるを得ないので自然こうなっているのですね。


以下は Debian/GNU Linux 2.2 on Windows( NT / 2000 / XP ) + VMware の例

■ インストール(potato) ■

compact 版 rescue.bin, root.bin フロッピーを用意(ご存知のように私はノート偏愛者なのでCD-ROMはほとんど無いものと考えている)。ごく普通にインストーラーにしたがっていればよい。なんの問題もない(だったらはじめからそう書け)。もちろんデスクトップ機でも確認済み。

あ、そうだ。X を動かす場合、セットアップはしない(できないのでやってもムダ)。

この組み合わせの実績

IBM ThinkPad s30 他
Dell Demension V333c 他


■ woody + カーネル2.4へ ■

自分的な好みで、カーネルは 2.4 系にしたほうがよいので、ついでに書いておくが、もちろん通常と何も変わらない。"さら"の状態からなら woody の bf2.4 フレーバーで一気にいける(試したらその時点ではインストールプロセスに不具合があった ---> たぶんパッケージの不具合だが)はず。
/etc/apt/source-list を woody 関係に書き換えて、
# apt-get update
# apt-get upgrade
で woody にして、
# apt-get install kernel-package
# apt-get install kernel-source-2.4.X
# apt-get install kernel-headers-2.4.X...
とかなんとかでいいのかな。かなりのパッケージがカーネルに依存してるので、他パッケージも いっぱいあります。まあこの辺、VMware とは関係ないね。問題があるとすればカーネルの構築にある。


■ カーネルコンフィグレーション ■

カーネルコンフィグレーションに限ったことではないが、VMwareではLinuxがゲストOSの場合

  • NIC は問答無用で pcnet32 となる
  • インストール先のハードディスクは問答無用で SCSIディスク ということなり、BusLogic
  • サウンドは問答無用で sound braster 互換となる
これらを知らず、あるいは忘れて、コンフィギュレーションで例えば BusLogic のSCSI サポートをはずして構築したカーネルで起動しようものなら、当然カーネルパニックで止まる(おそらく VFS うんたらかんたら....というメッセージ)。だってインストール先のディスクにアクセスできないわけだからね。他も同じ。実際のハードウェアのものとは無関係になる所がミソ。


■ X の設定 ■

通常の XF86_SVGA では解像度が出ないので、VMware では VMware 専用の XF86_VMware を用意している。それは vmware-linux-tools.tar.gz というのを取り込んで、その中のインストールスクリプトで導入できる。専用の XF86Config も作られる。早い話が、XF86Setup は使わない(使えない)。
※vmware-linux-tools.tar.gz の取り込み方。
settings メニューから VMware Tools Install をクリック。この状態になったとき linux から見ると、/dev/hdc が仮想的に扱われ、 vmware-linux-tools.gz がここに突然登場する。そこですかさず
# mount /dev/hdc /mnt

write-protected, mounting read-only とかいわれた気がするが、別にかまわない。/tmp とかに持ってくる。

# cp /mnt/vmware-linux-tools.tar.gz /tmp
# cd /tmp
# tar zxvf vmware-linux-tools.tar.gz
# cd vmware-linux-tools
# ./install.pl other
other という引数は Debian の場合固有で、ディストリビューションによって異なる。 Debian 以外の場合はとりあえず、引数なしで実行し、文句をいわれたらそのメッセージを見て、 引数を指定すればよい。このスクリプトでは2つ質問されるが、XFree86-4 を使わなければ デフォルトでいい。

これで 専用の X サーバーがセッティングされ、XF86Config も作られた。startx すると 1280 X 1024 とかの特大画面で立ち上がる。迷惑だ(笑)」。

しかし、woody にした場合、油断すると XFree86-4 となる。 そんで、何かのはずみでいきなり startx が無くなる。何を入れたときかよくわからん。kterm かな? 仕方ないので、
# apt-get install xbase-clients
とすればいいだろ、と思ったら startx は返ってきたが
cannnot stat /etc/X11/X (No such file or directory).
とかぬかす。FreeBSD なら x11/wrapper を入れればよさそうなんだが、 apt でなんつー名前のパッケージ入れたらいいのかわからん...。 とにかく、/usr/X11R6/bin/X ではダメ鯖だよんというわけだ。

なので、場当たり的だが、X を XF86_SVGA (VMware 用だが)へのシンボリックリンクにしちまえばいい のだと思う。で、XFree86-4 の場合は、なにかしらrootで書き込む(なんだったか忘れた)んで、 setuid しないといかんとのことだったはずなので、お望みのとおりにしてやる。そりゃあ!
# cd /usr/X11R6/bin/
# chmod 4555 XF86_VMware
# ln -s XF86_VGA16 X 
んー、こんなんでいいのか?ちゃんとやりたいヒトはちゃんと調べたほうがいいだろうなあ.....。

このへんは別に VMware に限った話ではないけどね。これ、一時期 Debian の ML でも話題になった現象。 「正しい」順でアップグレード問題が出ないそうだが、結局正しくない人のほうが多いということか。 かくいう自分もハマったからこんなことを知っているわけである。なるほど自分がいるほうが 「正しくないグループ」というのはなんとなく説得力がある。 しかし、細かい部分を知らないとうまくいかないパッケージシステムというのもなんだなー、と思うヒトも 多いだろうが、まあ、私はどうだっていいもんね。ま、いいや。

ちなみに「正しい」のは興味が無いので忘れました。私は Debian教 ではないのでねえ。


■ その他 ■

woody に上げると決定的に吹っ飛んでしまうものは他にもあるので注意。
# apt-get install man-db
しとかないと泣く。

cannaserver は古いままだとハングする。これもかつてMLにあって (そのとき正しい回答はなかった気がする)、回答したヒトはさもあたりまえのように

「ああ、そいつは名前解決できてないのだよ、ありがちだねーベイビー」

のようなニュアンスで書いてた覚えがある。まあ、正しい目の付け所ではあると思うし、 おそらく自分もそう考える。しかし、あまり詳しくなさそうなヒトが質問者なのであって、 おそらく cannaserver はあまりいじってないだろうから、ローカルの鯖だろう。 よほど悪意が無い限りlocalhost やら localdomain が解決できない なんて設定はないよねえ、よく考えれば。
# apt-get install canna
で解決する。

※注 Debian 最新おっかけの場合、その時点でのパッケージの状況は各人千差万別なので、 ここになる情報は世界中で私だけが体験した可能性も無いわけではないのであしからず。

そのうちオマケで FreeBSD 編を書く予定。




トップページ