11.04.2009

Zenwalk入れてみた。

先日Ubu子さんがお亡くなりになったことで、原因究明して環境の復旧を目論むのも面倒なので、いっそ新しいディストリビューションを入れてみることにした。

白羽の矢を立てたのがZenwalk。
コンパクトでスマートなディストリビューションとして知られていて、netpkgなる独自のパッケージ管理ツールを有する、Slackwareベースのディストリビューションだ。(なんかDistroFreakっぽくなったけど、別にディストリビューションの説明するわけじゃないよ)

Slackwareなら、確かcoLinuxのwikiに導入方法が書いてあったんで、それをベースにしたコイツのcoLinux上への導入も手軽なんじゃないかと考えたワケ。

でも、ネット上を探してみると、より手軽に導入できそうな方法を発見。
参考にした(というか、まんま方法を拝借した)のはココ

2007年と若干古い記事だけど、今リリースされているdevel版でも、そのまま通用しました。
(但し、試したのはkernel 2.6.22.18版のほうで、kernel 2.6.25.20版でもうまく行くかは未確認。近々アップデートする予定なので、詳しくはその時にでも。)

用意したのは
・Zenwalk core 5.2のISOイメージ。
(6.2が最新だけど、Coreイメージは公開されていなかったので、ダウンロードサイズの関係からこちらをチョイス。別に6.2のイメージを使っても問題ない)
・QEMU for Windows+ Kqemu for windows(イメージを作るのに必要)
・dd(参考にしたページではCygwinのを使っているけど、私はWindows上で特別な手続きなしに使える、ここのを愛用している。)
・空のイメージファイル。(参考にしたページでは、fsutilあたりを使って作ってるけど、ここから適当なサイズ(3GBぐらい?)のものと、スワップイメージ用のファイル(1GB以下)を取ってくるのが楽。ちなみに、今回は前回使った10GBのルートイメージをそのまま使い回すので、なにも持ってきていない。)

以下、具体的な作業手順。
1.作業ディレクトリとしてC:\zenwalkを用意して、zenwalkのISOイメージと空のイメージファイルを放り込む。
2.QEMuをC:\qemuにインストールしておく。Kqemuはデフォルトのまま、適当にインストールしておく。
3.ddは、パスの通ったところに配置。
4.コマンドプロンプトを起動し、qemuディレクトリにcdした後、

qemu.exe -hda c:¥zenwalk¥rootfs -hdb c:¥zenwalk¥swap -cdrom c:¥zenwalk¥zenwalk-core-5.2.iso -m 128 -boot d -L .

でqemuを起動。

これで、インストーラが立ち上がる。

5.キーマップを選択。私はUS配列なので、それをチョイス。
6.パーティショニングを実施。sda1がrootfs、sda2がswapに認識されていたので、それぞれパーティションを切ってやる。変に分割せず、容量をまるまる全部割り当てると、トラブルが少ない。パーティション分割したいときは、別のイメージファイルを用意してやるといい。
7.インストール開始。フォーマットはext2,ext3,reiserfsのいずれか。それ以外だと、coLinuxでは起動できないので注意。
8.放置。終わるまで放置。小一時間かかった。(ブートローダをMBRに入れるのを忘れないようにする)
9.終わったら、いったんqemuを終了し、改めて

qemu.exe -hda c:¥zenwalk¥rootfs -hdb c:¥zenwalk¥swap -L .

として再起動する。(ウィザードに従っての再起動は失敗するので、この方法を取らざるを得ない)
10.ウィザードに従って、インストール後の基本的な設定を済ませてやる。
11.rootでログインし

cd /dev
for i in 0 1 2 3 4 5 6 7 8 9
>do
>mknod cobd$i b 117 $i
>done

としてcobdデバイス(coLinuxの使うスペシャルデバイス)を作成する。
(参考にしたサイトと違い、0から作っていることに注意)
12./etc/fstabをviなどで開き

/dev/cobd0 / ext3 defaults,noatime 1 1
/dev/cobd1 swap swap defaults 0 0
proc /proc proc defaults 0 0

とかする。コレをしないと、起動できないので注意。
13.shutdown -h nowとかしてシステムを終わらせ、qemuを閉じる
14.Windows上に戻り、C:\zenwalkディレクトリに移動。
15.例えば、coLinuxがC:\coLinuxディレクトリにあるとして、そこにイメージを吐き出すには

dd if=C:\zenwalk\rootfs of=C:\coLinux\rootfs bs=512 skip=63

などとする。63ブロックをスキップするのは、MBRを読み飛ばすため。
16.これでC:\coLinuxディレクトリに目的のイメージができあがるので、それを使ってcoLinuxを起動する。
あとは煮るなり焼くなりお好きにどうぞ。

おそらく、この方法を用いればほとんどすべてのディストリビューションをcoLinux上で動かせるようにすることが可能だと思う。

いやあ。便利な世の中になったもんだ。

0 件のコメント: