nDiki : sarge

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月12日 (火)

サーバ用 IBM eServer xSeries 206 (8482-4BJ) に Debian GNU/Linuxインストール

naney:9209878

4月にはいってしばらく経ち、ようやく時間的な余裕がでてきた。

死にかけている社内サーバをリプレースするために調達してあった xSeries への Debian GNU/Linuxインストールを開始。 今回はもう1人の管理者と2人で管理できるように、一緒に作業を進めていく(いや、基本的には彼がやってくれた)。

sarge は随分インストールが楽になっている様子。 そういえば普段 dselect な自分には aptitude の操作がいまいちわからん。 そろそろ移行した方が良いのか?

[ 4月12日全て ]

2005年7月9日 (土)

Mew 4.2 へ

sarge リリース後 sid の mew パッケージが 4.2 に上がっていたのだが、様子見でしばらく 3.3 のままホールドしていた。

本日ホールドを解除して 4.2 へ。ホームに古い mew-nmz.el が残っていたため最初エラーで起動しなかったが、それを削除したら特に設定変更もなく移行完了。

3.3 より随分軽快になっているんだ。はやく上げておけばよかったかな。 Summary mode の表示は以前通り body 無しに変更。

[ 7月9日全て ]

2005年9月27日 (火)

納品前日なのに /var が壊れた! HDDからのブートで Debianインストール

午後になって「今日はメールがあまりこないな」と思っていたら、実はノート PCの /var が 100% を越えていた。 しかし急に何で?

 Filesystem          サイズ  使用  残り 使用% マウント位置
 /dev/hda1             9.2G  7.5G  1.3G  86% /
 tmpfs                 505M   16K  505M   1% /dev/shm
 /dev/hda2              19G   14G  3.9G  79% /home
 /dev/hda3             185M  -64Z  163M 101% /var
 /dev/hda5             1.2G  347M  813M  30% /tmp

いや、そもそも /var は 3.7GB ぐらい取ってあったはず。……ヤバイ? /var を除くと空の /var/lib と、空の lost+found のみ。 おや? あれ?

一旦シャットダウン。/var が無いので各 daemon が悲鳴をあげつつ終了。 でシングルユーザで起動して fsck。 酷い有様のようだ。 ここまで /var が壊れるとどうしようもないなあ。/var/lib/dpkg 以下がごっそり無いのは Debian 的に痛い。

納品を明日に控えているんですけどね。TeX のドキュメントもまだまだ書かなければいけないんですけどね (/var/lib/texmf も無い)。 メールのチェックもままならない(/var/qmail も /var/spool も無い)。

インストールかぁ。幸い / と /home が生きているから被害は最小限。 下手に無理して使い続けて他に悪影響が出てファイルを壊したりしないうちに、やってしまった方が良さそうだ。

インストール

まずは sargeDebian GNU/Linux を入れ直す。 USB FDD も USB CD-ROM ドライブも自宅で手元にないという状態の ThinkPad X31 ということで、 HDD からのブートをチョイス。

最初に / パーティションにある /usr/local を /home/naney 以下に退避。 次にGRUBからインストーラが起動するようにする。

 mkdir /boot/newinstall
 cd /boot/newinstall
 wget http://http.us.debian.org/debian/dists/sarge/main\
 /installer-i386/current/images/netboot/debian-installer/i386/initrd.gz
 wget http://http.us.debian.org/debian/dists/sarge/main\
 /installer-i386/current/images/netboot/debian-installer/i386/linux
 mv linux vmlinuz

/boot/grub/menu.lst に

 title New Install
 kernel (hd0,0)/boot/newinstall/vmlinuz root=/dev/ram0 ramdisk_size=12000
 initrd (hd0,0)/boot/newinstall/initrd.gz

を追加してリブート。GRUB のメニューから New Install を選んで起動させ、インストーラを立ち上げる。 パーティションの設定で

  • / と /var があったパーティションは初期化 (ext3)
  • /var と /tmp と のパーティションはそのままマウントするように設定
  • swap は今までと同じ /dev/hda6

あとは普通にネットワークインストール。 思ったより簡単に復旧できそうだ。CD-ROM やフロッピーディスクを作るよりよっぽど簡単。

最小限のパッケージだけ入れたらすぐに sidアップグレードし、後は作業しながら足りないものを順次インストール・設定。

/etc の下のバックアップは自宅にある外付けHDにあり、これを参照しないかゆいところまで手の届いた設定に戻していくのは大変。 とりあえず 会社では qmail の設定など必要な範囲のみに留めておく。

Linu kernel は以前作った deb 一式をとっておいたのでそれで置き換え。 有線LAN + DHCPな難境だったので、ネットワークまわりほぼ設定不要で助かった。

MADWIFIcpufreqd あたりの設定は自宅に戻ってから復旧させた。

被害状況

/var の lost+found をみると 11:35 ぐらいに /var に書き込めなくなったようだ。 気がついたのが 14:30 ぐらいで、再インストールしてある程度作業ができる状態 (メールまわり、XEmacs まわり他)になったのが、19:00すぎ。

問題確認後、作業中のファイルを失わずに Subversion リポジトリにコミットでき、もう一台のデスクトップ Windows PC で作業を継続できたのは不幸中の幸い。

しかし /var の破損の原因は何なんだろう。HDDの問題に起因するとなると今後もこわすぎるな。

[ 9月27日全て ]

2006年7月29日 (土)

Debian GNU/Linux sid 環境を新 HDD

朝から ThinkPad X31HDD 新しく入れ替えて Debian GNU/Linux sidインストールを開始。

Debian GNU/Linuxインストール

今日は sarge のネットワークインストール CD イメージからブートしてインストール。 今回はブートドライブにできる「ThinkPad USB ポータブルCD-ROMドライブ」があり、またこのイメージで起動して e1000 が認識できるので楽勝である。

(第1回目USB FDD + PC カード NIC でインストール第2回目HDD 上のインストーラから GRUB からの起動によるインストールだった)

最低限のものを入れたらすぐ sidアップグレード

HDD からのコピー

ヤバイ状態の旧 HDDUSB 外付け HDD ケースに詰めて

  • /home 全部
  • /usr/local で必要なもの
  • 参照用に /etc の複製
  • /var/www、/var/spool

を新しい HDD にコピー。

次に環境の復旧。 以下備忘録。

MADWIFI

以前作った Linux kernel 2.6.15 deb パッケージをインストールした後 module-assistant で madwifi をインストールするも、ビルドした GCC のバージョンが違ってロードできず。 kernel は GCC 4.0 の時にビルドしたもので、madwifi は現在のバージョンである GCC 4.1 によるビルドであることが問題。

まずは前にビルドした 2.6.15 のソースディレクトリでカーネルパッケージを GCC 4.1 で作りなおしてインストールし、あらためて module-assistant。

 module-assistant prepare
 module-assistant auto-install madwifi

で /etc/network/interfaces を書き戻す。

SMTP サーバを Postfix

ここずっと使っていた qmail をこの機会にやめることにした。 Postfix へ。

全体の設定はインストーラに従って設定。

個人設定は、

~/.qmail

 | preline /usr/bin/procmail

として procmail を使っていたので、~/.forward を作って同様に procmail に流すようにする。

 "|IFS='' && exec /usr/bin/procmail -f- || exit 75 #naney"

~/.procmailrc は以前のまま。ClamAVbsfilter でふるいにかけた後、Maildir へ。

bsfilter は deb のものに

以前入れた時は deb が古かったので /usr/local に自前でインストールした。 まずはこれを古い HDD から戻して動作確認後 deb のものに切り替え。

.mew.el の中も

 (load "/usr/share/doc/bsfilter/examples/mua/mew4/mew.el")

に変更。

Samba

/etc/samba/smb.conf を書き戻す。smbpasswd でパスワード再設定。

X

とりあえずインストール時の設定で xorg.conf を作る。

 Load "freetype"

をコメントアウトして、

 Load "xtt"

に変更。

KDE

sid は現在 3.5.3 と 3.5.4 混在状態になっているため、依存関係の問題で簡単にはインストールできずてこずった。 kdebase-data と kdelibs-data の 3.5.3 を http://snapshot.debian.net/ からとってきて hold して 3.5.3 系 KDE として各種パッケージをインストール

フレッシュリーダー

以前インスールした状態に復旧

  1. libapache2-mod-suphp php5-cli をインストール
  2. /var/www/freshreader、/etc/apache2/sites-available/freshreader を戻す
  3. a2ensite freshreader
  4. /etc/init.d/apache2 reload
  5. /etc/hosts に freshreader を追加

cpufreqd

  1. cpufreqdインストール
  2. /etc/cpufreqd.conf を戻す
  3. /etc/init.d/cpufreqd restart

Skype

skype-beta-1.3.0.30-1_i386.deb をインストール

cron

一般ユーザ naney の crontab ファイルを再登録。

Perl モジュール

足りないと気がついた時点で順次インストール

autofs + smbfs (2006年8月3日)

/etc/auto.master、/etc/auto.misc を書き戻して /etc/init.d/autofs restart。

mt-daapd (2006年8月22日)

deb パッケージを公式サイトからダウンロードし、/etc/mt-daapd.conf を書き戻して /etc/init.d/mt-daapd restart

[ 7月29日全て ]

2008年1月8日 (火)

sarge からetch へのアップグレードで危うくサービス壊すところだった

APT ラインが stable だったため中途半端に etch が混ざっているのが気になっているサーバがある。 セットアップした管理者がしばらく不在にしているので、アップグレードすることにしたが、やはりすんなりとはいかなかった。

Python 2.3 から 2.4

Python を使っているパッケージより先にインタープリタが削除されたため、そのパッケージが削除できなくなった。

依存関係無視して一旦削除して、更新。

Dovecot は設定がそのまま使えず、ダウングレード

Dovecotアップデートしたら、設定ファイルの項目が変わったのか、エラーメッセージを吐いてデーモンがあがらなくなった。 MySQL 使ってたり、いろいろ苦労して設定してたものなので、いじるのは危険。 sarge からパッケージ持ってきてダウングレード。

Linux kernelアップデートできず

kernel も 2.4 から 2.6 へアップデートしたが、再起動したら md まわりでエラーRAID のところがそのままでは駄目っぽい。 慌てて元に戻す。

一旦 udev にしたのも hotplug に戻した。

Apache は a2ensite・a2enmod しなおし

こちらは、バーチャルホストといくつかのモジュールの有効化がリセットされてサイトが見られなくなっていたので、それぞれ有効化しなおして復帰。

[ 1月8日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィでマネージャー・プロダクトオーナーをしています。

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

follow us in feedly

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

月別インデックス
Process Time: 0.159942s / load averages: 0.56, 0.56, 0.65
nDiki by WATANABE Yoshimasa (Naney, Google profile)
Powered by DiKicker