coLinux
のインストールの手順は基本的に以下のページに沿って行った。
ERROR STORM
http://www.geocities.jp/error_storm/colinux1.html
coLinuxのバージョンが 0.6.1
になって一部記述が古いところがあるので、適宜、補足。
- 環境:ホストOS:Windows XP ゲストOS:Debian Linux
SourceForge.net: Project Filelist
http://sourceforge.net/project/showfiles.php?group_id=98788
Project: Cooperative Linux: File List
から以下の二つをダウンロード
coLinux [show only this package]
0.6.1-2.4.26 [show only this release] 2004-05-28 14:00
coLinux-0.6.1.exe 2274374 43851 i386 .exe (32-bit
Windows)
Root FS Images - 2.4.x-based [show only this package]
Debian [show only this release] 2004-01-27 14:00
Debian-3.0r0.ext3.1gb.bz2 18329320 40422 i386 .bz2
それぞれのファイルを解凍すると、以下の通り。


ちなみに、coLinuxで用意された Fedora Core のイメージを解凍すると以下の通り。

bz2圧縮形式の Windows 上での解凍は Cygwin
などを推薦しているページが多かったが、TAR32.DLL で解凍した。
Common Archivers Library: TAR32.DLL http://www.csdinc.co.jp/archiver/lib/tar32.html
Ver0.50以降では単独でbzip2形式(tar.bz2/bz2)にも対応しています。
coLinux.exe を実行して、セットアップのウィザードを起動。
- WinPcap
は参考にしたページで、外しているページが多かったので。
- Root FileSystem image Download
は、私のときにはチェックを入れてもイメージがダウンロードされなかったので、チェックを外した。

インストール先のフォルダはデフォルトの C:\Program Files\coLinux から C:\coLinux に変更。

セットアップのウィザード終了後のセットアップ先の coLinux
フォルダ。先ほど解凍したカーネルのイメージも合わせてコピーした。

default.colinux.xml ファイルを変更
- カーネルのパスを C:\colinux に変更。
-
カーネルイメージのファイル名を変更。ダウンロードして解凍したファイル名に合わせた。他に UNIX の dd コマンドでイメージをコピーする方法も紹介されていた。
<?xml version="1.0" encoding="UTF-8"?>
<colinux>
<!-- This line needs to point to your root file system.
For example change "root_fs" to the name of the Debian image.
Inside coLinux it will be /dev/cobd0 -->
<!-- block_device index="0"
path="\DosDevices\c:\coLinux\root_fs"
enabled="true" / -->
<block_device index="0"
path="\DosDevices\d:\coLinux\Debian-3.0r0.ext3.1gb"
enabled="true" />
<!-- This line can specify a swap file if you wish, or an
additional
image file, it will /dev/cobd1. Additional block_devices can
be specified in the same manner by increasing the index -->
<block_device index="1"
path="\DosDevices\c:\coLinux\swap_device"
enabled="true" />
<!-- bootparams allows you to pass kernel boot parameters
-->
<bootparams>root=/dev/cobd0</bootparams>
<!-- 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="64" />
<!-- This allows you to modify networking parameters, see the
README
or website for more information -->
<network index="0" type="tap" />
</colinux>
以下、面倒になったので簡単に。
- ネットワークの設定は Windows
側で「インターネット接続の共有」を行い、coLinux 側では NAT
を使うようになる。
-
「ローカルエリア接続」で「インターネット接続の共有」を有効にする。その結果、「ローカルエリア接続2」のIPアドレス(coLinuxのNICのLAN側のアドレス)は
192.168.0.1 になる。
- colinux-daemon.exe を実行すると、ゲストの coLinux が起動される。シェルから vi エディタなどでネットワークの設定(IPアドレス、DNS、GWなど)を行う。このときキーボードはまだ日本語キーボードではなく、英語キーボードなので':'や'@'などの入力に注意。
- カーネルイメージをbz2圧縮したまま coLinux
をブートしてしまった際のログ(*)。解凍したら、ちゃんとブートした。
- apt-get update; apt-get upgrade を行うが、apt-get update
がエラーになった。原因は PROXY の指定を行っていなかったため。
# apt-get update Couldnot connect to www.t.ring.gr.jp:80
(133.43.224.21)
- connect (113 No route to host) Googleで「coLinux PROXY」を検索し、以下のページを参考に /etc/apt/apt.conf に PROXY
の設定 Acquire::http::Proxy "http://proxysv.mt.nec.co.jp:8080/"; を追加したら apt-get update ができた。
coLinux導入メモ
http://iwa.ath.cx/colinux/
「/etc/apt/sources.list」を作成する。もしHTTP/FTPプロキシを越える必要がある場合は、さらに「/etc/apt/apt.conf」に「Acquire::http::Proxy
"http://PROXY_SERVER_HOST:PORT/";」を記述する
はてなダイアリー - motonの日記
http://diary.hatena.ne.jp/moton/20040426#1082972447
proxy経由でインターネットに接続する環境の場合
/etc/apt/apt.confを編集
Acquire {
Retries "0";
Http {
Proxy "http://user:password@proxyserver:port/";
}
};
以上で、coLinuxからネットワークにつながり、Debian
のパッケージがインストールできるようになったら、後は coLinux
ではなく、Debian の設定。以下のページを参考に設定。
参考:
coLinuxのインストール (その6)
http://scratchpad.fc2web.com/colinux/install/install-6.html
以上。
次の課題は、今回は自宅のサーバでも使っていてなれた Debian
(Woody) のインストールだったので、次は Fedora Core
に挑戦して新しいパッケージをばしばし入れたい。
参考:
eco - Fedora JP wiki
http://fedora.jp/wiki/?eco
Fedora Core 1をcoLinuxで利用するには
*)エラー。以下はカーネルイメージをbz2圧縮したまま coLinux
をブートしてしまった際のログ。解凍したら、ちゃんとブートした。
Cooperative Linux Daemon, 0.6.1
Compiled on Sat May 29 16:20:11 2004
daemon: loading configuration from default.colinux.xml
daemon: creating monitor
colinux: allocated id 0
co_message_switch: setting callback rule for 7
co_message_switch: setting callback rule for 2
co_message_switch: setting callback rule for 6
co_message_switch: setting callback rule for 3
co_message_switch: setting callback rule for 0
co_message_switch: setting callback rule for 4
colinux: launching net daemons
daemon: launching daemon for conet0
executing: colinux-net-daemon -c 0 -i 0
daemon: launching console
executing: colinux-console-fltk -a 0
Linux version 2.4.26-co-0.6.1 (karrde@callisto.yi.org) (gcc version
3.3.3 (Debia
n 20040429)) #1 Sat May 29 15:30:37 IDT 2004
64MB LOWMEM available.
On node 0 totalpages: 16384
zone(0): 0 pages.
zone(1): 16384 pages.
zone(2): 0 pages.
Kernel command line: root=/dev/cobd0
Initializing CPU#0
Setting proxy interrupt vectors
Detected 2405.493 MHz processor.
conet-daemon: auto selecting TAP
conet-daemon: found TAP device named "ローカル エリア接続 2"
conet-daemon: opening TAP: "ローカル エリア接続 2"
conet-daemon: driver version 7.1
conet-daemon: enabling TAP...
pipe client 0/8: Connecting to daemon...
pipe client 0/8: Connection established
daemon: module connected: conet0
co_message_switch: setting callback rule for 8
Console: colour CoCON 80x25
Calibrating delay loop... pipe client 0/6: Connecting to
daemon...
pipe client 0/6: Connection established
daemon: module connected: console
co_message_switch: setting callback rule for 6
6737.10 BogoMIPS
Memory: 62120k/65536k available (1137k kernel code, 0k reserved,
62k data, 52k i
nit, 0k highmem)
Dentry cache hash table entries: 8192 (order: 4, 65536 bytes)
Inode cache hash table entries: 4096 (order: 3, 32768 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 512K
CPU: After generic, caps: bfebfbff 00000000 00000000 00000000
CPU: Common caps: bfebfbff 00000000 00000000 00000000
CPU: Intel(R) Pentium(R) 4 CPU 2.40GHz stepping 09
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
Journalled Block Device driver loaded
devfs: v1.12c (20020818) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x0
pty: 256 Unix98 ptys configured
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024
blocksize
loop: loaded (max 8 devices)
cobd: loaded (max 32 devices)
conet: loaded (max 16 devices)
conet0: initialized
Initializing Cryptographic API
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 4096 bind 8192)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
VFS: Cannot open root device
"cobd0" or 75:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount
root fs on 75:00
daemon: monitor terminated, reason 3
switch_message: freed message be01d0 (2 to 4)
daemon: module disconnected: conet0
Pipe broken, exiting
switch_message: freed message be01d0 (2 to 4)
daemon: module disconnected: console
colinux: shutting
down
daemon: daemon
cleanup