colinux セットアップ

やること
  • 用意(ダウンロード)
  • coLinuxインストール
  • Debianイメージの解凍とその他イメージの配備
  • coLinux コンフィグ作成
  • ホストOS(Windows Vista)とのネットワーク接続共有
  • coLinux 起動
  • 追加ファイルイメージ(export.img)のフォーマット/マウント
  • ネットワーク疎通確認
  • お好みのパッケージをインストール など

以下、cygwinbash)が使えることが前提。なくても大丈夫。

用意(ダウンロード)
モノ 説明
coLinux本体 Cooperative Linux - Browse Files at SourceForge.netcoLinux-stableより最新版(現時点で0.7.4-linux-2.6.22.18 )
Debianイメージ Cooperative Linux - Browse Files at SourceForge.net のImages 2.6.x Debianより最新版(現時点でDebian 5.0 Lenny)
coLinuxインストール

coLinux本体でダウンロードしてきた coLinux-0.7.4.exe を実行。'choose components' 画面で 'RootFile system image Download'のチェックをはずすことと、'TAP-Win32 Adapter V8 (coLinux)'のインストールで警告が出ても続行すること。前者は、別途ダウンロードしたDebianイメージを使い、後者はホストOS(Windows)経由でネットワーク接続するために必要だから。ここで、インストール先は L:\coLinux としている。

Debianイメージの解凍とその他イメージの配備

ダウンロードしたDebianイメージ(Debian-5.0r2-lenny.7z)は7zで圧縮されているので、cygwinにインストールしていた 7z で解凍。

$ 7z e Debian-5.0r2-lenny.7z

解凍後、生成された Debian-5.0r2-lenny.ext3.2gb を debian.img にリネーム。更に、別途データ保存用のファイルイメージ(export.img)を作って coLinux のインストールディレクトリにおいておく。(17179869184 = 16GB)

$ mv Debian-5.0r2-lenny.ext3.2gb debian.img
$ fsutil file createnew export.img 17179869184
ファイル k:\archives\soft\colinux\export.img が作成されました
$ mv debian.img export.img /cygdrive/l/coLinux
coLinux コンフィグ作成

以下のような debian.conf を coLinux インストールディレクトリにおいておく。

$ cat debian.conf
kernel=vmlinux
cobd0="L:\coLinux\debian.img"   # FileSystemImageの指定
cobd1="L:\coLinux\export.img"   # データ保存用イメージ
initrd="L:\coLinux\initrd.gz"   # initrdの指定
mem=1280                        # 使用するメモリの指定(単位はMB)
eth0=tuntap
root=/dev/cobd0
ホストOS(Windows Vista)とのネットワーク接続共有
  • コントロール パネル -> ネットワークとインターネット -> ネットワーク接続で表示される一覧にある、NICに対するデバイスのプロパティを開く(ここではローカル エリア接続)。
  • 「共有」タブを選択。
  • 「ネットワークのほかのユーザーに、このコンピュータのインターネット接続をとおしての接続を許可する」にチェックを入れ、「ホーム ネットワーク接続」で デバイス名が 'TAP-Win32 Adapter V8 (coLinux)' であるデバイスを選択(ここではローカル エリア接続4)。
coLinux 起動

以下のようなシェルスクリプトを用意して、起動

$ cat ~/bin/colinux
#!/bin/sh

cd /cygdrive/l/coLinux
./colinux-daemon.exe @"debian.conf"
$ ~/bin/colinux &

rootの初期パスワードは colinux

追加ファイルイメージ(export.img)のフォーマット/マウント(オプション)

export.imgに対応するデバイスファイル /dev/cobd1 に対してフォーマット

colinux:~# mkfs.ext3 /dev/cobd1

/etc/fstabを編集して /dev/cobd1 を/exportにマウントするようにする。/exportはデフォルトで存在しないので作っておく。最後にmountしてみて正しく設定されているか確認。

colinux:~# mkdir /export
colinux:~# cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/cobd0      /               ext3    errors=remount-ro 0       1
/dev/cobd1      /export         ext3    errors=remount-ro 0       2
colinux:~# mount /export
ネットワーク疎通確認

特に設定してなくともdhclinetがIPアドレスを取得していた。

colinux:~# ps -ef | grep dhclient
root      2227     1  0 02:12 ?        00:00:00 dhclient3 -pf /var/run/dhclient.eth0.pid -lf /var/lib/dhcp3/dhclient.eth0.leases eth0
root      2404  2387  0 03:07 pts/0    00:00:00 grep dhclient
colinux:~# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:ff:57:10:37:00
          inet addr:192.168.0.67  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::2ff:57ff:fe10:3700/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:654 errors:0 dropped:0 overruns:0 frame:0
          TX packets:254 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:162798 (158.9 KiB)  TX bytes:31360 (30.6 KiB)
          Interrupt:10

colinux:~# ping www.yahoo.co.jp
PING www.ya.gl.yahoo.co.jp (203.216.235.154) 56(84) bytes of data.
64 bytes from f7.top.vip.tnz.yahoo.co.jp (203.216.235.154): icmp_seq=1 ttl=54 time=10.0 ms
64 bytes from f7.top.vip.tnz.yahoo.co.jp (203.216.235.154): icmp_seq=2 ttl=54 time=0.000 ms

--- www.ya.gl.yahoo.co.jp ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.000/5.000/10.001/5.001 ms
お好みのパッケージをインストール など

ssh, vim, screen など。samba当たりを構成しても便利かも。また、念のためswapをちょっとだけ作っておく。スワップを使い始めたらメモリを増やすなりすること。後は普段使うユーザー作成とか。

colinux:~# aptitude update
colinux:~# aptitude ssh
colinux:~# aptitude vim
colinux:~# aptitude screen
colinux:~# dd if=/dev/zero of=/export/swap bs=1M count=128
128+0 records in
128+0 records out
134217728 bytes (134 MB) copied, 2.34004 s, 57.4 MB/s
colinux:~# mkswap /export/swap
Setting up swapspace version 1, size = 134213 kB
no label, UUID=0c98e36a-d2b8-40f1-8ae3-f3bca974bc6d
colinux:~# cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/cobd0      /               ext3    errors=remount-ro 0       1
/dev/cobd1      /export         ext3    errors=remount-ro 0       2
/export/swap    swap            swap    defaults        0       0
colinux:~# swapon -a
colinux:~# useradd -d /export/home/ihiroky -s /bin/bash ihiroky
colinux:~# mkdir /export/home/ihiroky
colinux:~# chown ihiroky:ihiroky /export/home/ihiroky
colinux:~# passwd ihiroky


参考:軽快なLinux環境をつくれる、coLinuxのセットアップ手順 - Unix的なアレ