「FreeBSD 2.2.1-RELEASE インストールログ」
その6 FreeBSD詳細設定その1

...X680x0 spirit inside...



「その5 FreeBSDネットワークテスト」 「その7 FreeBSD詳細設定その2」
「表紙へ戻る」 「FreeBSDページの表紙へ戻る」
「会議室」 「日記」


■詳細設定その1

ここでは、ppp接続インターフェース「iij-ppp」へのパッチ、カーネルの再コンパイルを行なうまでの手順を説明します。たとえプログラミングの経験がなくても、再コンパイルは難しくないはずです。


■スーパーユーザー

これから行なう「パッチ作業」や「カーネルの再コンパイル」など、システムの根幹に関わる作業ができる資格を持ったユーザーを「スーパーユーザー」と呼びます。一般的には"root"と、"wheel"というメンバーグループに所属するユーザー(*)がその資格を持っています。

(*)今回は、ユーザー登録時にユーザー"gorry"をメンバーグループ"wheel"に所属させています。

FreeBSDサーバーマシンのコンソールから、下線部分を入力してください。


%su
Password: RootPass
#
"RootPass"は、"root"のパスワードです。プロンプトが"%"から"#"に変わり、スーパーユーザーであることを示します。


■ファイルのコピー

いよいよパッチとコンパイルを行ないます。・・・が、その前にFreeBSDサーバーにそのためのデータを準備しなければなりません。今回は、NetBEUI接続したクライアントマシンからそれらのファイルを転送します。

まず、ファイルをクライアントマシンへダウンロードしてください。

続いて、これらをFreeBSDサーバーマシンへ転送します。エクスプローラーを起動してから、「\\ネットワークコンピュータ\Home\samba\」フォルダへ上の2つのファイルをコピーしてください。

FreeBSDサーバーのコンソールから以下のように入力して、ファイルの存在を確認してください。


#cd /usr/samba
#ls
mykernel.tar.gz   nat-970607.patch
#

これらのファイルをしかるべき場所に配置します。


#cp nat-970607.patch /usr/src/usr.sbin
#cp mykernel.tar.gz /usr/src/sys/i386/conf
#

これらのファイルのエンコーディングを解いて、使用可能なファイルを作ります。


#cd /usr/src/usr.sbin
#tr -d '\015' < nat-970607.patch | tr -d '\032' > nat.patch
#cd /usr/src/sys/i386/conf
#tar xvzf mykernel.tar.gz
MyKernel
#


■iij-pppへのパッチ

FreeBSDには、ダイヤルアップサーバープログラム「iij-ppp」が同梱されています。これを使って、モデムやTAを介してインターネットへ接続(ppp接続という)することができます。

標準で同梱されているiij-pppは「単一のIPアドレスとの接続」しか扱うことができません(1台のマシンしか外部へ接続できない)が、ここで紹介する「NATパッチ」を導入することで、「複数のIPアドレスとの接続」を同時に扱う(複数のマシンを同時に外部へ接続する)ことができるようになります(*)

(*)データを外部(今回の場合はインターネット)に送信する場合、iij-pppが「gorry.local内部を示すIPアドレス」を「iij-pppが管理するIPアドレス」に変更してから外部に送信します。また逆にデータを受信する場合、iij-pppが「iij-pppが管理するIPアドレス」を「gorry.local内部を示すIPアドレス」に変更してから内部に送信します。
最近(1997/08)人気の「MN128-SOHO」などの「ルーター付きTA」は、TAがこの機能を持っています。

では、パッチ作業を開始します。FreeBSDサーバーのコンソールから以下のように入力してください。


#cd /usr/src/usr.sbin
#patch -p<nat.patch
(表示メッセージ省略)
#

ソースファイルへのパッチ作業が終了したら、再コンパイルを行ないます。以下のように入力してください。


#cd ppp
#make
(表示メッセージ省略)
#make install
(表示メッセージ省略)
#
以上で、iij-pppへのパッチが終了しました。


■カーネルの再コンパイル

FreeBSDは、多くのデバイスドライバが「カーネル」と呼ばれるOSの内側に入っています(*)。FreeBSDでは、新しいデバイスドライバを入れるためには「カーネル」を再構成する必要があります。

(*)MS-DOSやWindows95でいうところの"IO.SYS"や"MSDOS.SYS"に相当するものが「カーネル」です(厳密にはちょっと違うが)。

再コンパイルとはいっても、C言語のソースファイルと格闘する必要はありません。config.sysをちょっと複雑にしたような、「カーネルコンフィグレーションファイル」を修正して、再構成のための命令群を与えるだけで行なえます。

では、再コンパイル作業を開始します。FreeBSDサーバーのコンソールから以下のように入力してください。


#cd /usr/src/sys/i386/conf
#ls MyKernel
MyKernel
#

先ほど準備した"MyKernel"というファイルが、今回のシステム用の「カーネルコンフィグレーションファイル」です(*)

(*)同じディレクトリにある"GENERIC"というファイルが、インストール時のカーネルコンフィグレーションファイルです。何が違うか、比較してみるのもいいでしょう。

続いて、FreeBSDサーバーのコンソールから以下のように入力してください。


#config MyKernel
(表示メッセージ省略)
#cd ../../compile/MyKernel
#make depend; make
(表示メッセージ省略)
#make install
(表示メッセージ省略)
#
以上で、カーネルの再コンパイルが終了しました。


■リブート

いよいよ、新しいカーネルでの起動を行ないます。以下のように入力してください。


#shutdown -r now
(表示メッセージ省略)
・・・と出て、マシンが再起動します。


メールはこちらへ...[後藤浩昭 / Hiroaki Goto / GORRY / gorry@shonan.ne.jp]

「その5 FreeBSDネットワークテスト」 「その7 FreeBSD詳細設定その2」
「表紙へ戻る」 「FreeBSDページの表紙へ戻る」
「会議室」 「日記」