世界線航跡蔵

Mad web programmerのYuguiが技術ネタや日々のあれこれをお送りします。

2005年07月29日

coLinuxのインストール

coLinuxが最近ずいぶん安定してきたらしいので入れてみることにした。

現在、めでたくWinXPとDebian sargeがデュアルブート可能になっている。ここでcoLinux 0.6.2をインストールして、デュアルブート且つWinXPからcoLinuxとしてもDebianを利用可能という状態を目指す。

主に次の資料を参考にした。

インストール

  1. 公式サイトより、インストーラー(colinux-0.6.2.exe)を取得。

  2. TAPにてネットワークを提供する予定なので、WinPcapは不要。またファイルシステムイメージも不要。coLinux本体とTap-Win32のみをインストールする。

    インストールオプション画面
  3. インストール先は"C:\coLinux"とした。

  4. c:\coLinux\vmlinux-modules.tar.gzをDebian側に移す。方法は何でも良いが、私はFAT32のパーティションを経由した。

起動設定

  1. runlevel 4をcoLinux専用のレベルとして使うことにする。/etc/rc4.d/はあらかじめ、それを想定して適当に設定しておく。とりあえず重要なのはgdmを起動しない設定にしたぐらい。

  2. 先ほどのvmlinux-modules.tar.gz内の2.6.10-co-0.6.2以下を/lib/modulesに配置。その後、update-modulesする。

  3. 再びWinに戻ってC:\coLinuxで作業する。設定ファイルdefault.colinux.xmlをコピーして、それをベースにcolinux-debian-sarge.xmlを作成。パーティションは昨日の記事に書いた通りに切ってあるので、それに合わせるとcolinux-debian-sarge.xmlの内容はこんな感じ。Debianの単独起動時と/etc/fstabを共用できるように、ブロックデバイスに適宜aliasを作成してある。

    
    <?xml version="1.0" encoding="UTF-8"?>
    <colinux>
      <!-- /etc/fstabが参照しているブロックデバイスを定義 -->
      <!-- (root) -->
      <block_device index="0" alias="sda7" path="\Device\Harddisk0\Partition6" enabled="true" />
      <!-- (swap) -->
      <block_device index="1" alias="sda6" path="\Device\Harddisk0\Partition5" enabled="true" />
      <!-- /home -->
      <block_device index="2" alias="sda8" path="\Device\Harddisk0\Partition7" enabled="true" />
      <!-- original /boot -->
      <!-- このデバイスは不要だが、マウント失敗のメッセージが鬱陶しいので一応定義しておく。 -->
      <block_device index="3" alias="sda5" path="\Device\Harddisk0\Partition4" enabled="true" />
      <!-- /interos -->
      <block_device index="4" alias="sda9" path="\Device\Harddisk0\Partition8" enabled="true" />
      <!-- /media/cdrom -->
      <block_device index="5" alias="hda" path="\Device\Cdrom0" enabled="true" />
      <!-- /media/floppy0 -->
      <block_device index="6" alias="fd0" path="\Device\Floppy0" enabled="true" />
    
      <!-- bootparams allows you to pass kernel boot parameters -->
      <!-- ランレベルは4を使用 -->
      <bootparams>ro 4 root=/dev/sda7</bootparams>
    
      <!-- Initial RamDISK (initrd) support -->
      <initrd path="initrd.gz" />
        
      <!-- image allows you to specify the kernel to boot -->
      <image path="vmlinux" />
    
      <!-- this line allows you to specify the amount of memory available 
           to coLinux -->
      <memory size="128" />
    
      <!-- This allows you to modify networking parameters, see the README 
           or website or wiki for more information -->
      <network index="0" type="tap" />
    </colinux>
    
  4. コマンドラインから次のように起動。

    colinux-daemon.exe -c colinux-debian-sarge.xml -t nt

    以上で、一応起動に成功した。メモリの割り当てが128MBだとちょっと動作が重い。物理メモリは1GBあるので、もうちょっと割り当ててやってもWinの動作は問題ない気もする。

ネットワークの設定

coLinuxからネットワークにつなぐには、何とかしてcoLinuxからのパケットをネットワークに中継してやらなければならない。WinXP自身がルーターになるとか、いろいろ方法はあるらしいが、WinXPの場合ネットワークブリッジを作ってしまうのが簡単でパフォーマンスもよいらしい。

  1. coLinuxは起動しておく。
  2. WinXPの「ネットワーク接続」を開いて、作成されているTAP-Win32のネットワークアダプタの名前をTAPに変更。

  3. 「TAP」と「ローカルエリア接続」を選択して、右クリックメニューから「ブリッジの作成」を選択。ブリッジが作成される。

  4. うちの環境の場合、DHCPを使うようになっているのでこれで設定終了。あとは今行った変更を読み込ませればおしまい。

    WinXP側は、なんか初めはpingも通らなかったけれど、暫くしたらネットワークブリッジが勝手にIP等取得してつながるようになった。coLinux側は/etc/init.d/networking restartでネットワークを再初期化。

とりあえず、こんな感じ。今はcoLinuxとして起動した場合、デフォルトの2.6.10-co-0.6.2カーネルを使ってることになるのだけれど、そのままだと多少不便もあるのでそのうちカーネル再構築してみる予定。とりあえず、debianのunstableからkernel-source-2.6.10だけインストールしておいた。

トラックバック

http://yugui.jp/articles/227/ping
coLinuxカーネルの再構築 (ratio - rational - irrational)
coLinuxカーネルの再構築

コメント

blog comments powered by Disqus

ご案内

前の記事
次の記事

タグ一覧

過去ログ

  1. 2016年07月
  2. 2016年01月
  3. 2015年09月
  4. 2015年08月
  5. 過去ログ一覧

フィード

フィードとは

その他

Powered by "rhianolethe" the blog system