OS | Windows XP SP3 |
---|---|
CPU | Intel Core2 Duo CPU U7600 1.20 GHz |
Memory | 2.5 GB |
coLinux-0.7.9.exe をダブルクリックして実行します。
途中、下記の選択肢では「Root Filesystem image Download」のチェックを外します。
Select components to install: +■coLinux □Root Filesystem image Download
Destination Folder [D:\coLinux\ ]
次の画面で下記のような警告が出ますが【続行】を押します
TAP-Win32 Adapter V8 (coLinux) を使用するためにインストールしようとしているソフトウェアは、 Windows XP との互換性を検証する Windows ロゴ テストに合格していません。 : : 【続行】
スタート > 接続 > すべての接続の表示 新しく作成された「ローカル エリア接続 N」を「TAP-coLinux」にリネームする
QEMU は、Linux、Windows、FreeBSD、Mac OS X上で動作する、多種の CPU をエミュレートするプログラムです。
この後の CentOS をインストールする時に必要になります。
「qemu-0.13.0-windows」というディレクトリが生成されるので、D:\qemu-0.13.0-windows に移動します。
KQEMU は、QEMU をx86環境(32bit)で実行させる時に、より速く実行することを可能にするアクセラレータです。
インストールすると速度が2倍以上速くなります。(未確認)
以下、引用。
http://wiki.qemu.org/download/kqemu-1.4.0pre1.tar.gz から kqemu をダウンロードし、展開します。 kqemu のインストール 上記のパッケージから kqemu.inf と kqemu.sys ファイルを取得します。 Windows* XP システムの場合は、kqemu.inf ファイルを右クリックし、 [インストール] を選択します。 Windows* 7 または Windows Vista* システムの場合は、kqemu.inf ファイルを 次のように変更してから、右クリックして [インストール] を選択します。 * [DefaultInstall.NT] --> [DefaultInstall] * [DefaultInstall.NT.Services] --> [DefaultInstall.Services] * [Uninstall.NT] --> [Uninstall] * [Uninstall.NT.Services] --> [Uninstall.Services] kqemu の起動 [スタート] > [すべてのプログラム] > [アクセサリ] と選択し、 [コマンド プロンプト] で右クリックして [管理者として実行] を選択します。 [コマンドプロンプト] で次のコマンドを実行します。 > net start kqemu このステップは、PC を再起動する度に繰り返す必要があります。
今回は、10GB の OS 用のディスクイメージと 1GB のスワップ用ディスクイメージを作成します。
コマンドプロンプト
> md d:\coLinux\CentOS5 > fsutil file createnew d:\coLinux\CentOS5\root.10gb 10737418240 > fsutil file createnew d:\coLinux\CentOS5\swap.1gb 1073741824
http://ftp.riken.jp/Linux/centos/5.6/isos/i386/CentOS-5.6-i386-bin-DVD.iso
ダウンロード後、D:\CentOS-5.6-i386-bin-DVD.iso に移動します。
コマンドプロンプト
> d: > cd d:/qemu-0.13.0-windows > qemu.exe -hda d:\colinux\CentOS5\root.10gb -hdb d:\colinux\CentOS5\swap.1gb -cdrom d:\CentOS-5.6-i386-bin-DVD.iso -m 1024 -boot d -L .
上記を実行すると下記のようなインストーラ画面が立ち上がります。
これ以降は、GUIで操作します。
QEMU と Windows 間のマウス切替は「Alt + Tab」で行います。
[重要]
ここでは必ず カスタムレイアウト を選択してください。
それ以外を選択すると後述する「colinux-daemon.exe」の起動で下記エラーが発生し、OSが立ち上がらなくなります。
Warning: unable to open an initial console. Kernel panic - not syncing: No init found. Try passing init= option to kernel.
なお、これ以降の設定では、/dev/hda をすべて / に割り当て、/dev/hdb をすべて swap に割り当てます。
キャプチャ画像を参考に設定してください。
さっそく、CentOS5.6 を起動してみます。
以下のコマンドを実行してください。
コマンドプロンプト
> qemu.exe -hda d:\colinux\CentOS5\root.10gb -hdb d:\colinux\CentOS5\swap.1gb -m 1024 -L .
root でログイン後、下記コマンドで inode を生成します。
※この作業は必ず行ってください。
cd /dev for i in `seq 1 10`; do mknod cobd$i b 117 $i; done
OS が素早く起動し、かつメモリの消費量が抑えられるように、coLinux用の ext3ディスクイメージを作成します。
ext3ディスクイメージの作成には、dd コマンドを利用します。
今回は、cygwin に依存しない前提で、dd コマンド(dd.exe)の準備から始めます。
下記URLにて Windows 用の dd.exe をダウンロードします。
dd for windows
http://www.chrysocome.net/dd
ダウンロード後、D:\coLinux\dd.exe に移動します。
コマンドプロンプトで下記コマンドを実行します。
コマンドプロンプト
> d: > cd d:/coLinux > dd.exe if=d:\coLinux\CentOS5\root.10gb of=d:\coLinux\CentOS5\root.10gb.ext3 bs=512 skip=63
coLinux ディレクトリ内に設定ファイル「CentOS5.6.conf」を作成します。
kernel="D:\coLinux\vmlinux" cobd0="D:\coLinux\CentOS5\root.10gb.ext3" # dd で作成したイメージ cobd1="D:\coLinux\CentOS5\swap.2gb" cofs0="D:\share" # Windows と共有したいフォルダ root=/dev/cobd0 fastboot initrd="D:\coLinux\initrd.gz" mem=512 eth0=tuntap,"TAP-coLinux"
コマンドプロンプトで CentOS5.6.conf を引数に渡し、colinux-daemon.exe を起動します。
コマンドプロンプト
> d:\coLinux\colinux-daemon.exe @d:\coLinux\CentOS5.6.conf -t nt
今回は、ブリッジ接続を用いて、ワイヤレス ネットワーク接続(無線LAN)を共有します。
普段、ローカル エリア接続(有線LAN)を利用されている方は、ワイヤレスネットワーク接続をローカルエリア接続として読み替えてください。
スタート > 接続 > すべての接続の表示 |
---|
コントロールキーを押しながら『TAP-coLinux』と『ワイヤレス ネットワーク接続』の両方をクリックし、二つのアイコンが選択された状態で、右クリックから「ブリッジ接続」を選択します。
すると下記のようなダイアログが表示されるので、しばらく待ちます。
赤枠のように「ネットワーク ブリッジ」というアイコンが作成されます。
もし、「ネットワーク ブリッジ (ネットワーク ブリッジ) 2」のような名前の場合、「ネットワーク ブリッジ」にリネームします。
ワイヤレス ネットワーク接続 > 右クリック > 「ブリッジから削除」を選択します。
すると下記のようなダイアログが表示されるので、しばらく待ちます。
スタート > 接続 > すべての接続の表示 |
---|
ワイヤレス ネットワーク接続 > 右クリック > プロパティ > [詳細設定]タブ |
赤枠のアイコンのように、手のマークが付加され、共有されたことを確認してください。
スタート > 接続 > すべての接続の表示 |
---|
ネットワークブリッジ > 右クリック > プロパティ |
Windows XP の設定はここまでです。
次に CentOS に root でログインし、以下の手順を行ってください。
% vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=static # HWADDR=xx:xx:xx:xx:xx:xx HWADDR=00:FF:xx:xx:xx:xx ONBOOT=yes IPADDR=192.168.100.10 NETMASK=255.255.255.0 NETWORK=192.168.100.1
ifconfig -a
% vi /etc/resolv.conf nameserver 8.8.8.8 nameserver 8.8.4.4
% vi /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=no # IPv6 を使用しない NOZEROCONF=yes # routeに 169.254.0.0 が設定されるのを防止する GATEWAY=192.168.100.1
% /etc/init.d/network restart [root@localhost ~]# /etc/init.d/network restart putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented Shutting down interface eth0: putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented [ OK ] Shutting down loopback interface: putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented [ OK ] putfont: PIO_FONT: Function not implemented Bringing up loopback interface: putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented [ OK ] Bringing up interface eth0: putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented putfont: PIO_FONT: Function not implemented [ OK ]
% ping google.co.jp -c 3 PING google.co.jp (72.14.203.99) 56(84) bytes of data. 64 bytes from tx-in-f99.1e100.net (72.14.203.99): icmp_seq=1 ttl=42 time=80.0 ms 64 bytes from tx-in-f99.1e100.net (72.14.203.99): icmp_seq=2 ttl=42 time=80.0 ms 64 bytes from tx-in-f99.1e100.net (72.14.203.99): icmp_seq=3 ttl=42 time=70.0 ms --- google.co.jp ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2020ms rtt min/avg/max/mdev = 70.000/76.666/80.000/4.724 ms
CentOS5.6.conf で設定した D:\share を CentOS と Windows 間のファイル共有をするディレクトにします。
: cofs0="D:\share" # Windows と共有したいフォルダ :
CentOS にログインし、下記コマンドを実行します。
% mkdir /mnt/windows % mount -t cofs cofs0 /mnt/windows
毎回コマンドを実行するのは手間なので、fstab に設定を記述しておくと便利です。
% vi less /etc/fstab LABEL=/ / ext3 defaults 1 1 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 cofs /mnt/windows cofs defaults,uid=10001,gid=10001,noattrib 0 0 LABEL=SWAP-hdb1 swap swap defaults 0 0
Windows のターミナルソフト putty 等から ssh 接続
% ssh root@192.168.100.10
hogeuser@colinux |
---|
上記のように変更したい。
% sudo vi /etc/hosts : 127.0.0.1 colinux localhost.localdomain localhost :
% sudo vi /etc/sysconfig/network : HOSTNAME=colinux :
network のリロード
% sudo /etc/rc.d/init.d/network reload
「TaskTrayPlus」というフリーソフトが便利です。
⇒ このソフトは、指定したウィンドが最小化された時、タスクトレイに格納してくれます。