名村知
弘
![]() |
Windows 上でしか動かないソフトがあったり、 会社の PC が Windows だったりと、 Windows を完全に手放すことができな い環境はまだまだ多いと思います。 そんな Windows な環境にあっても、 coLinux があれば Windows を起動しながらにして、 お気軽に Debian を楽しむことができます。
coLinux の設定から、 Debian を楽しむまでの流れをご紹介します。
coLinux(COoperative LINUX) とは、 Windows 上で動作する Linux カーネルです。 coLinux 上で Debian を動作させる場合、 coLinux パッチの当てられた専用の Linux カーネル上で Debian が動作することになります。 Debian が Windows 上の 1 つの アプリケーションとして動作するため、 Windows を使いながら必要になった時に Debian を起動し使用することができ ます。
Windows 上で Debian を使う環境としては、 VMWare などの PC エミュレータが考えられますが、 PC エミュレータはオーバ ヘッドやメモリ使用量が大きく、 全体的に動作が重くなってしまします。 coLinux は Windows アプリケーション として Linux が起動するため、 PC エミュレータに比べ動作が軽いのが特徴となっています。 ただし、 ディ スプレイデバイスやサウンドデバイスが実装されていないため、 単体では音のでない CUI 環境となります。 *1
coLinux で Debian を使用するには、
の 3 ステップを実行します。
以下では、 Windows Vista*2 で の、 TAP-Win32 を使用したインストールのステップを簡単に説明します。
coLinux の配布サイト*3 から、 coLinux のインストーラ*4 を ダウンロードします。
ダウンロードしたインストーラを起動し、 デフォルトのままインストールを進めていくと、 図 1のような、 インストールモ ジュールを選択する画面が表示されます。 ここではネットワークアダプタとして「TAP-Win32」 を使用しますので、 「SLiRP」 「WinPcap」 のチェックを外してください。
引き続きデフォルトのままインストールを進めていくと、 図 2のような root ファイルシステムを選択する画面が表示される ので、 間違えずに「Debian」 を選択してください。
あとは再びデフォルトのままインストールを進めると、 インストール完了です。 ここで、 「コントロールパネル」 - 「ネット ワーク接続」 を表示し、 「ローカルエリア接続 2」 が作成されていると思いますので、 右クリックし名前の変更を行い、 「TAP」 に変更しておきます。
「ローカルエリア接続」 が 2 つ以上ある場合はプロパティを表示し、 「接続の方法」 が「TAP-Win32 Adapter V8 (coLinux)」 となっているものの名前を変更します。
coLinux の使用するネットワーク接続は、 TAP-Win32(仮想ネットワークアダプタ) を使用します。 この仮想ネットワークアダ プタは物理的に LAN などのネットワークに接続していないため、 ホスト PC の Real NIC を通じて物理的なネットワークに接 続する必要があります。 物理的なネットワークに接続する方法として、 ここでは以下の 2 つの方法をご紹介し ます。
Bridge 接続を用いた方法
Bridge 接続では図 3のように、 TAP-Win32 を通じて coLinux が Real NIC と同じサブネットに接続されるため、 他の PC からも coLinux にアクセスすることができます。 Real NIC のネットワーク環境 (固定 IP や DHCP など) に合わせて、 coLinux のネットワーク設定を行う必要があります。 長所としては、 ネットワーク上の他の PC から coLinux に直接アクセス することができます。 短所としては、 ネットワークに接続されていない環境では、 Windows からも coLinux にアクセスするこ とができません。
設定は以下のようになります。
ネットワーク接続の共有を用いた方法
ネットワーク接続の共有では図 4のように、 TAP-Win32 は Real NIC とは異なるサブネットに参加し、 ホスト OS が NAT になることで中継します。 TAP-Win32 の IP アドレスは「192.168.0.1」 固定となり、 coLinux は「192.168.0.1/24」 の IP を 固定で割り当てることになります。 Real NIC の接続しているサブネットが「192.168.0.0/24」 の場合、 IP アドレスがバッティ ングしてしまうため、 使用することができません。 長所としては、 ネットワークに接続されていない環境でも、 Windows から 常に coLinux に対して接続することができます。 短所としては、 ネットワーク上の他の PC からは coLinux にアクセスするこ とができません。
設定は以下のようになります。
coLinux を起動するまでには、 次の 3 つのステップが必要です。
coLinux のインストール時にダウンロードされた Debian のルートイメージファイルが、 coLinux インストールディ レクトリに「Debian-4.0r0-etch.ext3.1gb.bz2」 というファイル名で作成されていますので、 ファイルを展 開*5 し ます。
展開すると「Debian-4.0r0-etch.ext3.1gb」 というファイルが生成されるため、 分かりやすいように「fs-root-etch.img」 な どと名前を変更しておきます。
coLinux のインストールでは、 swap ファイルは用意されていないため、 各自で用意する必要があります。 ここでは既に作成さ れた swap ファイルをダウンロードできるサイトを利用してダウンロードします。 http://gniarf.nerim.net/colinux/swap/にアクセスし、 「swap_512Mb.bz2」 をダウンロードします。
「swap_512Mb.bz2」 を展開すると、 「swap_512Mb」 というファイルが生成されるため、 分かりやすいように 「fs-swap-512.img」 などと名前を変更しておきます。
これで必要なファイルは全てそろったので、 coLinux で Debian を起動するための設定を行います。
設定ファイルのフォーマットには、 xml を使用した方法と、 独自の conf ファイルの 2 種類がありますが、 ここでは conf ファ イルを使用した方法を記載します。
coLinux インストールディレクトリに「etch.conf」 というファイルを作成し、 以下の内容を記載します。
kernel=vmlinux
initrd=initrd.gz mem=512 # 「c:\coLinux」 は適宜 coLinux のインストールディレクトリで読み替えてください。 cobd0="c:\coLinux\fs-root-etch.img" cobd1="c:\coLinux\fs-swap-512.img" eth1=tuntap root=/dev/cobd0 ro |
coLinux をインストールしたディレクトリに、 「example.conf」 というファイルがありますので、 必要であればこのファイル を参考に設定を変更してください。
coLinux には 2 通りの起動方法が用意されています。
以下にそれぞれの起動方法を記載します。
コンソールアプリケーションとして起動する方法
coLinux のインストールディレクトリに、 「colinux-daemon.exe」 のショートカットを作成し、 プロパティから「リンク先」 の
末尾に「-t nt @etch.conf」 を追加します。
このショートカットを起動すると、 coLinux がコンソールアプリケーションとして起動します。 コンソールアプリケーション として起動しているため、 コンソールを終了すると当然 coLinux も終了してしまいます。
うっかり終了してしまうことを防ぐため、 coLinux をサービスアプリケーションとして起動する方法が用意されてい ます。
サービスアプリケーションとして起動する方法
コマンドプロンプトを起動し、 coLinux のインストールディレクトリに移動し、 以下のコマンドを実行します。 「c:\coLinux」
は適宜 coLinux のインストールディレクトリで読み替えてください。
colinux-daemon.exe "@c:\coLinux\etch.conf" --install-service
|
これで coLinux がサービスとして登録されました。 ファイル名を指定して実行より以下のコマンドを実行し、 「Cooperative Linux」 が登録されていることを確認してください。
%SystemRoot%\system32\services.msc
|
「スタートアップの種類」 を「手動」 に設定し、 以下のコマンドでそれぞれ起動、 停止することができます。
net start "Cooperative Linux"
net stop "Cooperative Linux" |
第 12 回関西 Debian 勉強会 2008 年 4 月
____________________________________________________________________________________________