このページでは、coLinuxの動作を制御するための設定ファイルの準備と、 動作確認を行います。
設定ファイルのフォーマットはcoLinux 0.6.x系とcoLinux 0.7.x/0.8.x系では、 大きく異なっていますので注意してください。
|
|
設定ファイルの作成ここでは、coLinuxの設定ファイルを作成することによって、 coLinuxに割り当てるメモリサイズと ディスクイメージファイルの指定します。 これらは c:\coLinuxにあるファイル example.confを ベースに作成します。 まずはexample.confをコピーしてcolinux.conf というファイルを作成しましょう。 以降ではこのファイルを編集します。 設定ファイルの詳細説明はこちら も参照してください。 メモリの割り当てこれはcolinux.confのmemの部分を編集します。 デフォルトではコメントアウトされており、 この場合はメインメモリの1/4(最低は16MB)になります。 私はメモリサイズを制限したかったので128MBにしてみました。 mem=128 ディスクの割り当てこれはcolinux.confのcobd0とcobd1の部分を編集します。 coLinuxからは、 cobdXで指定したディスクイメージをデバイスファイル (/dev/cobd0とか/dev/cobd1とか)でアクセスすることができます。 /dev/cobd0にルートディクスイメージ(root.img)を、 /dev/cobd1にスワップディスクイメージ(swap.img)を割り当てるには 以下のようにします。 cobd0=c:\coLinux\root.img cobd1=c:\coLinux\swap.img ブートパラメータの指定これはcolinux.confのroの行を確認します。 この行の記述がLinuxカーネルの起動時に、パラメータとして渡されます。 これはデフォルトのままで大丈夫です。 ro ルートデバイスの指定これはcolinux.confのrootの行を確認します。 coLinuxはこのデバイスをルートデバイスとしてブートします。 指定するデバイス名はcoLinux上での名前ですので注意してください。 上記の様にroot.imgを/dev/cobd0に割り当てた場合は以下のようにします (これはデフォルトのままです)。 root=/dev/cobd0 初期ラムディスクの指定これはcolinux.confのinitrdの行を確認します。 これはデフォルトのままで大丈夫です。 initrd=initrd.gz ネットワークの設定これはcolinux.confのeth0の部分を編集します。 デフォルトではslirpという方法が使われますが、 とりあえずtuntapを選択しておきます。 この設定では、ネットワークの接続にTAP-Win32を用います。 WinPCapを使いたい場合は修正が必要ですが、 それは次ページ以降で取り上げます。 eth0=tuntap 作成したファイル以下が作成したcolinux.confです(コメント部分は削除しました)。 kernel=vmlinux cobd0=c:\coLinux\root.img cobd1=c:\coLinux\swap.img ro initrd=initrd.gz root=/dev/cobd0 mem=128 eth0=tuntap 動作確認ここまできたら設定したcoLinuxが動くかどうかの確認をしましょう。 コマンドプロンプトで以下のコマンドを入力します。 c:\>cd c:\coLinux c:\coLinux>colinux-daemon @colinux.conf するとウィンドウ(colinux-console)が表示され、 Linuxがブートするはずです。 ブートの様子は普通のLinuxとほとんど同じです。
ログインプロンプトが出たらユーザ名root、 パスワードrootでログインしましょう。 SMP(含HyperThreading)の人は coLinuxがうまく動かないという話もありますが、 普通の環境の人ならここまで問題なくいけると思います。 キーボードの設定が英語キーボードになっている点や、 せっかく追加したSwapディスクが設定されていないなど、 いろいろ変更しなければいけない点はありますが、 それはネットワークの設定をしたのちにcoLinuxに telnet(ssh)で接続して行いましょう。 とりあえず、 coLinuxをシャットダウンしてネットワークの設定をしましょう。 不具合対策(この不具合はdevel-coLinux-20080113.exe, devel-coLinux-20080226.exeで遭遇しました) さて、ブート時のメッセージを見るとeth0でなにやら問題が出ていることが 判ります。 設定ファイルでeth0を割り当てたはずですが、 eth0としてちゃんと認識されていないようです。 Linuxのカーネルの認識状況を確認してみましょう ("|"はシフトキーと「]」です)。
c:\>cat /proc/net/dev | grep eth
eth1: 0 0 0 ...
どうも、eth1として認識されているようです。 そこで/etc/udev/rules.d/z25_persistent-net.rulesを修正します。 修正は、NAME="eth0"の行をコメントアウト(行頭に#を挿入)し、 NAME="eth1"をNAME="eth0"に変更します。 つまり、このファイルにはコメントの行(先頭が#の行)を除くと、 以下の行があるだけになります。
# PCI device 0x1a55:0x0005 (conet)
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="(省略)", NAME="eth0"
こうしておけば次の起動時からeth0として認識されるようになります 終了シャットダウンは普通のLinuxと同じで、下記コマンドを入力します。
# shutdown -h now
colinux-consoleに"System halted."が表示されたら、 colinux-consoleを閉じましょう。 |
| SEO | 仕事 花 | 掲示板 レンタルサーバー プロフ SEO | |