バリケンのRuby日記 RSSフィード

2006-06-24

[] coLinuxを複数同時に起動して相互に通信する  coLinuxを複数同時に起動して相互に通信する - バリケンのRuby日記 を含むブックマーク はてなブックマーク -  coLinuxを複数同時に起動して相互に通信する - バリケンのRuby日記  coLinuxを複数同時に起動して相互に通信する - バリケンのRuby日記 のブックマークコメント

昨日の日記インストール手順をメモした「coLinux」の話題を続けるよ。

Ruby on RailsデプロイツールCapistrano(旧名SwitchTower)を評価しようと思うと、開発用と本番用の合計2台のLinuxマシンが必要になるよ。でも、coLinuxを同時に2つ起動すれば、1台のマシンで評価することができるよ。

以下、簡単な手順だよ。

TAP-Win32 Adapterの追加

コントロールパネル」「ハードウェアの追加」で「ネットワークアダプタ」「TapWin32Project」「TAP-Win32 Adapter」を選択して、「TAP-Win32 Adapter」をもうひとつ追加するよ。

アダプタの名前の変更

二つあるTAP-Win32 Adapterの名前を、それぞれ「tap0」「tap1」に変更するよ。

ファイルコピー

debian.bat」「debian.conf」「swap_device」「Debian-3.0r2.ext3-mit-backports.1gb」を、それぞれ「debian2.bat」「debian2.conf」「swap_device2」「Debian-3.0r2.ext3-mit-backports.1gb.2」としてコピーするよ。

debian.batの編集

次のようにするよ。

colinux-daemon @debian.conf -t nt

debian.confの編集

次のようにするよ。

kernel=vmlinux
cobd0=Debian-3.0r2.ext3-mit-backports.1gb
cobd1=swap_device
initrd=initrd.gz
mem=64
eth0=tuntap,tap0,00:FF:8A:7E:AF:00
root=/dev/cobd/0
cofs0=C:\

debian2.batの編集

次のようにするよ。

colinux-daemon @debian2.conf -t nt

debian2.confの編集

次のようにするよ。

kernel=vmlinux
cobd0=Debian-3.0r2.ext3-mit-backports.1gb.2
cobd1=swap_device2
initrd=initrd.gz
mem=64
eth0=tuntap,tap1,00:FF:8A:7E:AF:01
root=/dev/cobd/0
cofs0=C:\

インターネット接続の共有を解除

インターネット接続の共有」を解除するよ。

ブリッジの設定

TAP-Win32 Adapter「tap0」「tap1」の二つのインタフェースを、ブリッジに設定するよ。

インターネット接続の共有の再設定

インターネット接続の共有」を設定するよ。共有に指定するインタフェースは、先ほど「tap0」「tap1」の二つのインタフェースを束ねて作られたブリッジインタフェースにするよ。

ブリッジインタフェースのIPアドレスの設定

ブリッジインタフェースのIPアドレスを192.168.5.1に変更するよ。

coLinuxのIPアドレスの設定

debian2.batをダブルクリックして起動して、IPアドレスを192.168.5.41に変更するよ。

もうひとつのcoLinuxの起動

debian.batをダブルクリックして起動して、同時に2つのcoLinuxが起動できることを確認してね。

また、pingコマンドとかで双方のLinuxとが通信できることを確認してね。

サービス化

もちろん2つのcoLinuxを別々のWindowsサービスとして登録することができるよ。いったん以前の設定を削除して、名前を変えて二つ登録してね。

> cd C:\Program Files\coLinux
> colinux-daemon --remove-service
> colinux-daemon kernel="C:\Program Files\coLinux\vmlinux" cobd0="D:\coLinux\debian\Debian-3.0r2.ext3-mit-backports.1gb" cobd1="D:\coLinux\debian\swap_device" initrd="C:\Program Files\coLinux\initrd.gz" mem=64 eth0=tuntap,tap0,00:FF:8A:7E:AF:01 root=/dev/cobd/0 --install-service "coLinux Debian 1"
> colinux-daemon kernel="C:\Program Files\coLinux\vmlinux" cobd0="D:\coLinux\debian\Debian-3.0r2.ext3-mit-backports.1gb.2" cobd1="D:\coLinux\debian\swap_device2" initrd="C:\Program Files\coLinux\initrd.gz" mem=64 eth0=tuntap,tap1,00:FF:8A:7E:AF:02 root=/dev/cobd/0 --install-service "coLinux Debian 2"

もしサービスから削除したくなったら、--remove-serviceに名前を指定してね。

> cd C:\Program Files\coLinux
> colinux-daemon --remove-service "coLinux Debian 1"
> colinux-daemon --remove-service "coLinux Debian 2"

参考