FreeBSD ハンドブック : FreeBSDカーネルのコンフィグレーション : カスタムカーネルの構築とインストール
Previous: なぜカスタムカーネルを作るか?
Next: コンフィグレーション ファイル

5.2. カスタムカーネルの構築とインストール

まず, カーネル再構築に必要なディレクトリをざっと見てみましょう. ここではディレクトリはすべて /usr/src/sys以下の相対位 置で示します. また, /sysからもアクセス可能です. ここには, カーネルの各部分を構成するサブディレクトリが いくつもあります. しかし, 私たちの目的では 最も重要なのは i386/confです. ここで, あなたの システムに合わせてカーネル コンフィグレーションを編集します. それから compileディレクトリ, ここはカーネルが作られる 場所です. サポートされているデバイスやファイルシステムのディレ クトリツリーがオプション毎にサブディレクトリに分かれている論理 的構成に注意してください. また, i386のディレクトリは PCのハードウェアのみを扱い, i386以外のディレクトリは FreeBSDが他のプラットフォームに移植される際には共有されるコー ドです.

注: もし, あなたのシステムに/usr/src/sys 以下のディレクトリがなければ, カーネルのソースが インストールされていません. パッケージのインストール手順にしたがっ て, システムにインストールしてください.

つぎに, i386/confに移動して, GENERIC コンフィグレーションファイルをカーネルに与えたい名前に コピーしてください. たとえば:

# cd /usr/src/sys/i386/conf
# cp GENERIC MYKERNEL
慣習として, この名前はすべて大文字でつづられます. もし, いくつかの異なるハードウェアの FreeBSDマシンを扱うなら, この名前にホスト名を含めるとよいでしょう. ここでは, 例として MYKERNEL と呼ぶことにします.

注: この作業は root権限でおこなう必要があります. そうでなければ, ``permission denied''というエラーが出ます.

では, MYKERNELをあなたの好きなエディタで編集してください. もし, システムをインストールしたばかりならば, 利用できる エディタは viだけかもしれません. ここでは使い方 の説明はしませんが, 参考図書にあるような多くの本で詳しく説明 されていますので, そちらを参照してください. まずファイルの最初の方のコメント行を編集し, あなたのコンフィグ レーションに合せて変更した点などを記述して GENERICと区別がつく ようにしておきましょう.

もし SunOSや他の BSDオペレーティングシステムでカーネルの 再構築をしたことがあれば, このファイルはとても親しみ やすいでしょう. しかし, DOSのようなその他の オペレーティングシステムしか知らない人から見れば, GENERICコンフィグレーションファイルはとても なじみにくいものかもしれません. そのような場合は, コンフィグレーションファイル の節をゆっくりと注意深く読んでください.

注: 古いバージョンの FreeBSDからアップグレードを おこなう場合, 新しいカーネルソースを得た場所より新しいバージョンの config(8)を取ってくる必要があるかもしれません. これは /usr/src/usr. sbinにあります. したがってこれらのソースをダ ウンロードする必要があります. 次のコマンドを実行する前に (configを)作りインストールをしておいてください.

編集し終ったら, 次のコマンドによってコンパイル, インストール を行ってください.

# /usr/sbin/config MYKERNEL
# cd ../../compile/MYKERNEL
# make depend
# make
# make install
新しいカーネルはルートディレクトリに /kernelという 名前でコピーされ, 今までのカーネルは /kernel.old という名前へ変更されます. では, システムをシャットダウン, リブー トして新しいカーネルを使ってください. うまく行かない場合は, この章の終りの 問題が起きた場合には を参照してください. この章の新しい カーネルがブートしない 場合のリカバリの方法を注意深く読んでおいてください.

注: (サウンドカードのような)新しいデバイスを 追加した場合は, 使う前に /devディレクトリで デバイスノードを追加しなければならないかもしれません. 詳しくは, デバイスノードを読んでください.


FreeBSD ハンドブック : FreeBSDカーネルのコンフィグレーション : カスタムカーネルの構築とインストール
Previous: なぜカスタムカーネルを作るか?
Next: コンフィグレーション ファイル
FreeBSD Home Page
www@freebsd.org
Updated May 23, 1997