NetBootをするための情報


カーネル開発をするには、標準以外のブート方法が必要です。 以下にNetBootの方法をまとめておきます。

概要

Cobalt {Qube,RaQ}の製品群にはメンテナンス用の隠しオプションとしてネットワーク からカーネルを取得して起動する機能があります。 この機能を利用した NetBoot のレシピを以下に公開します。 なお、以下のレシピはこゆーい人用なので自分の責任でおこなうのはもちろん 自分自身の味付けに変更する必要があります。

1. 用意する材料
   Cobalt {Qube,RaQ}       1台
   Unix搭載機              1台

   今回は材料入手の都合もあって2700Jを1台とRedHat 6.0搭載機を用意しました。

2. 下ごしらえ

まずRedHatでDHCPサーバとNFSサーバを立ち上げます。
Installされていなかった場合は別途インストールしておきましょう。

2.1 DHCPサーバの設定
(0) DHCPで設定する内容は
      ホスト名      : cobalt
      IP Address    : 192.168.1.1
      Net mask      : 255.255.255.0
      default route : 192.168.1.254
      MAC Address   : 00:10:e0:01:02:03
    とします。

(1) 2700Jのホスト名をひけるように/etc/hostsに登録ます。
(2) /etc/dhcpd.conf を設定します。

shared-network hogehoge {
  subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.1 192.168.1.1;
    option domain-name-servers 192.168.1.254;
    option domain-name "hogehoge.co.jp"
    option routers 192.168.1.254;
  }
  host cobalt {
    hardware ethernet 00:10:e0:01:02:03;
    fixed-address 192.168.1.1;
  }
}

(3) dhcpdを起動します。

/etc/rc.d/init.d/dhcpd start を実行します。
起動時に dhcpd が起動するように

cd /etc/rc.d/rc3.d
ln -s ../init.d/dhcpd S35dhcpd

cd /etc/rc.d/rc6.d
ln -s ../init.d/dhcpd S35dhcpd


2.2 NFSサーバの設定
(0) NFSサーバのIPアドレスを192.168.1.254とします。
(1) /nfsroot/boot ディレクトリを作成します。
(2) /etc/exports を以下のように設定します。

/nfsroot   cobalt(rw,no_root_squash)

(3) /etc/rc.d/init.d/nfs restart を実行し設定を反映します。


3. 調理方法
ではさっそくNetBootの調理を行いましょう

(1) 2700Jを起動します。このときネットワーク設定を下処理で設定した内容に
    合わせておきましょう。
(2) mkdir /mnt をしておきます。
(3) mount 192.168.1.254:/nfsroot /mnt でマウントします。
(4) 以下のコマンドでカーネルをコピーします。

cp /boot/vmlinux.gz /mnt/boot/vmlinux.gz
cp /boot/System.map /mnt/boot/System.map

(5) 以上で調理終了です。簡単でしょう?


4. お召し上がり方
NetBoot は以下の手順でお召し上がりください。

(1) LCDパネルの右ボタンと左ボタンを押しながら電源を投入します。
    LCDパネルに Net Boot と表示されて起動すれば成功です。

(2) 起動しない時は DHCP や NFS の設定を確認してください。

June. 1999.
Thanks for Hatayama.


This page is administrated by
Cobalt Users Group. (usersgroup@cobaltqube.org)
All rights are reserved.
[BACK]