前のページ 次のページ 目次

3. サーバのセットアップ

3.1 サーバ用とクライアント用のカーネルをコンパイルする

たぶん、サーバのカーネルに RARP のサポートを入れたおいたほうがよいでしょう。 カーネルパラメータを使わずにブートするならば、RARP のサポートが必要です。 ただし、クライアントがサーバと同じサブネットになければ RARP は役に立ちません。

ディスクレスマシン用のカーネルには、最低限次の機能をコンパイル時に組み込んでおく必要があります。

ディスクレスマシンをカーネルパラメータなしにブートしようとする場合、 ルートデバイスを 0:255 にセットする必要もあります。 mknod /dev/nfsroot b 0 255 によってダミーのデバイスファイルを作成して、 これをセットします。このようなデバイスファイルを作成すると、 rdev <カーネルイメージファイル名> /dev/nfsroot によってカーネルイメージのルートデバイスをセットできます。

3.2 ルートファイルシステムの作成

ファイルシステムをコピーする

クライアントのためのルートツリーをサーバ上のどこに置くか決めた後で、例えば、 mkdir -p <ディレクトリ名> して tar cClf / - . | tar xpCf <ディレクトリ名> - でルートツリーを生成してください。

LILO を使わずにカーネルをブートする場合、 ルートディレクトリは/tftpboot/<IPアドレス> でなければなりません。 もしそれが嫌なら、カーネルのソースの一番上にある Makefile で変更できます。 NFS_ROOT = -DNFS_ROOT="\"/tftpboot/%s\"" みたいな行を探してください。 ここを変更した場合、カーネルを再コンパイルしなければいけません。

ルートファイルシステムに対する変更

さて、不必要なファイルを取り除いて、 ディスクレスマシンの /etc/rc.d スクリプトをチェックしましょう。 重要な点がいくつかあります。

ファイルシステムをエクスポートする

サーバ上のディスクレスマシン用ルートディレクトリをエクスポートします。 exports(5)のマニュアルを参照してください。 たいていの場合、このファイルを変更した後、 nfsd/mountd を再スタートしなければなりません。

RARP のセットアップ

ネット上のどこかで RARP を起ち上げます。 もし nfsroot パラメータなしにブートするなら、RARP サーバが NFS サーバでなければいけません。 普通は、RARP サーバが NFS サーバでしょう。 こうするためには、カーネルを RARP のサポート付きで走らせる必要があります。

RARP の設定をするためには、次のスクリプトを実行してください (そしてサーバの/etc/rc.dのどこかにこのスクリプトをインストールしておきましょう!)

/sbin/rarp -s <ip-addr> <hardware-addr>

ここで

ip-addr

iはディスクレスマシンのIPアドレス

hardware-addr

はディスクレスマシンのネットワークカードの イーサネットアドレス(MAC アドレス)

です。

例: /sbin/rarp -s 131.131.90.200 00:00:c0:47:10:12

IPアドレスのかわりに名前を使うこともできます。サーバがIPアドレスを (/etc/hosts や DNS を検索して)みつけることができれば、ですが。

ハードウェアアドレスをみつけるには

ハードウェアアドレスなんて知りません!どうすればみつかるんですか?


前のページ 次のページ 目次