nDiki : QEMU

2005年4月8日 (金)

QEMU を使って Debian GNU/Linux 上で Windows を動かす

VMware の話のなかで Bochs というのが話題にでたのでチェックしてみた。 記事などを見ていると QEMU の上の方が高速に動くという評判である。

先日 Wine を試してみたものの、結局 WindowsDLL とかがたくさん必要でいろいろ面倒なわりにソフトウェアの動作確認環境としては不安定すぎて使えない感じだ。 ということで QEMU の上に Windowsインストールしてみることにした。

QEMUインストール

Debian のパッケージになっているのでそれをインストール:

 apt-get install qemu

Windows インストール CD-ROM イメージの準備

今回は Windows 2000 Professional をインストールしてみる。 手元にあるのがアップグレード版なので Windows 98CD-ROM も必要。 それぞれ dd でイメージを作っておく (w2kupdate.iso、w98.iso)。

エミュレーション環境のHDDイメージを作成

とりあえず2GB。

 qemu-img create w2k.img 2G

/var のパーティションに余裕があるので、/var/lib/qemu を作ってそこにおく。

Windows 2000 Professional インストール失敗

HDD イメージ・CD-ROM イメージを指定し(-hda、-cdrom)、CD-ROM からブートするようにオプションを指定(-boot d)して QEMU を起動。QEMU のグラフィックモードでマウスクリックした後、なぜか Ctrl-Alt してもマウスを grab したまま離してくれないので、QEMUモニタは qemu を起動した端末側にしておく (-monitor stdio)。 メモリは1GB実メモリの半分、512MBにしておく(-m 512)。

 qemu -hda   /var/lib/qemu/w2k.img \
      -cdrom /tmp/w2kupdate.iso \
      -boot d \
      -m 512 \
      -monitor stdio \
      -user-net

インストール開始。 途中で Windows 2000 より前の OSCD-ROM を要求される。 QEMU モニタ上で CD-ROM を交換

 change cdrom /tmp/w98.iso

しかし、インストーラは正しい Windows 98 インストールディスクとして認識してくれず。 Windows 2000 を直接インストールするのは諦め。

ということで Windows 98 SE を先にインストール

遊びでちょっと sargeインストールをちょっと途中まで QEMU 上でやってみる。 以前のインストーラより設定項目が少なくなった?

で気をとりなおして、Windowsインストールの続き。 Windows 98 SEインストールしてから、Windows 2000アップグレードすることにする。

Windows 98 の起動ディスクのイメージを dd で作成 (w98fd1.img)。

これでブート

 qemu -hda /var/lib/qemu/w2k.img \
      -cdrom /tmp/w98.iso \
      -fda w98fd1.img \
      -boot a \
      -m 512 \
      -monitor stdio \
      -user-net

こちらは順調にインストールが進む。 1時間以上かかってインストール完了。

Windows 98 起動中はCPUパワーを100%使うので、ファンががんがん回ってうるさいうるさい。

あいかわらず ungrab できないのが困るな。 1度 QEMUのグラフィカルウィンドウ上をクリックして grab されてしまうと、他のウィンドウにフォーカスを与えることができなくなってしまう。 Windows 98 側でシャットダウンして QEMU を終了させるか、Ctrl-Alt-Backspace で X Window System もろとも落とすとかしか手段がない。 Windows 使用中、他のウィンドウが使えないというのでは利用価値半減。

要調査。

スポンサード リンク
[ 4月8日全て ]

2005年4月9日 (土)

QEMU上の Windows 98 SEWindows 2000アップグレード

昨日の続き。

Windows 2000アップグレード

rimage:http://www.naney.org/img/2005/screenshot/QEMU-w2k-2005-04-09-0001-240.png QEMU 上にインストールできた Windows 98 SEWindows 2000アップグレード。 こちらは特に問題なし (アップグレード時にちょっとエラーダイアログが出たが致命的ではない様子)。

Windows 2000アップグレードしたらアイドル時にCPUを100%使わないようになった。素晴しい。 そのかわり、シャットダウンしても電源断(=QEMU終了)はしなくなった。

Windows Upgrade ではSP4以外はアップデートできた。 Windows Upgrade からの SP4 インストールは、ファイルのダウンロード中にエラーが起きて先に進まない。

別途SP4のアップデータをダウンロードしてインストールしてみたが、こちらも途中でエラー終了。

Ctrl-Alt による ungrab

Window Maker との関連による問題かと思い、Blackbox Window Manager をインストールしてその上で動かしてみたが駄目。

うーん。困った。

X Window System 関連の設定を再チェックしてみる。

あれ ~/.xinitrc の中で呼んでいるスクリプトにこんなのがある:

 #!/bin/sh
 # set alt as meta key
 # ref man xmodmap
 xmodmap -e "keysym Alt_L = Meta_L Alt_L"

1999年4月6日のタイムスタンプのファイル。 うーん、いつだったか多分 Emacs 用に設定したんだと思う。 今は必要ない。

これをはずしたら QEMU 上で Ctrl-Alt が使えるようになった。 良かった良かった。

[ 4月9日全て ]

2005年4月16日 (土)

WiKicker リリースに向けてテスト追加・バグ修正

WiKickerWin32 対応のために、ファイル処理まわりや flock を使っているところを中心としたテスト・修正作業。

  • ファイルのパス文字列の作成は File::Spec を使うように修正
  • Windows 2000 上でこけていた flock 処理部分を修正

これでようやく Win32 で動くようになったかな。 まだ一部警告が出るけど。

しかし ThinkPad X31 (2672-PHJPentium M 1.60GHz [Banias]) の上での QEMU + Windows 2000 は、やっぱり遅すぎて動作検証には使いづらい。WiKicker で1ページの処理に10秒以上かかったりするし。 結局 VNC を使って、別のPCで作業を行った。

[ 4月16日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

※内容は個人的見解であり所属組織とは関係ありません。

follow us in feedly

月別インデックス
Process Time: 0.046726s / load averages: 0.23, 0.26, 0.30
nDiki by WATANABE Yoshimasa (Naney, Google profile)
Powered by DiKicker