沼津高専 電子制御工学科
MIRSMG3D カーネル再構築手順書
MIRSMG3D-OSIN-0002
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2009.3.5 細川 牛丸 初版


目次








1.はじめに


 本ドキュメントは、MIRSMG3Dのカーネル再構築手順をまとめたドキュメントである。
 MG3で用いるOS(CentOS 5.2)の標準のカーネルアーキテクチャはi686である。一方、MG3で用いるCPUボードに実装されているCPUのアーキテクチャはi586である。アーキテクチャが不一致であると動作に支障をきたす場合があるので、CPUアーキテクチャに合わせてカーネルの再構築を行う必要がある。再構築時のCPUプロセッサ選択にMG3で用いるCPUであるGeode LXがあるので、Geode LX用にカーネルの再構築を行う。
 また、再構築を行う際は同時に
「MIRSMG3D-OSIN-0008 リモートアクセス環境実装手順書」を参考に、リモートアクセス環境の実装を行うことを推奨する。
 カーネルの再構築を行う環境はいくつかあるが、本ドキュメントでは「MIRSMG3D-OSIN-0001 OSインストール手順書」でOSをインストールしたCFからOSを起動して再構築する方法について示す。




2.OSの起動


 PCまたはMG3のCPUボードにCFをセットし、CFからOSを起動する。PCから起動する場合
「MIRSMG3D-OSIN-0001 OSインストール手順書」の手順3と同じ環境にしておく。




3.カーネルソースのダウンロード


 インストールしたばかりのOSでリコンパイル作業をする場合は、先に「yum updata」を行って、アップデート終了後に作業を開始しておくこと。

 まず、下記URLよりカーネルソースをダウンロードする。

wget
http://ftp2.riken.jp/Linux/centos/5.2/updates/SRPMS/kernel-2.6.18-92.1.22.el5.src.rpm

データベース内にこのカーネルを保存してあるので、このリンクから もダウンロードできる。
 保存先は任意だが、ここでは「/tmp」内に保存したとする。



4.インストール環境の準備


 先ほどダウンロードしたRPMファイルをインストールする。
 その前に、スーパーユーザでログインする。
 GNOME端末を開き、下記コマンドを入力する。

$ su -
パスワードを入力

続いて、RPMファイルが保存されているディレクトリ(ここでは/tmp)に移動。

# cd /tmp

RPMのインストールを行う。

# rpm -ivh kernel-2.6.18-92.1.22.el5.src.rpm



5.インストーラの起動


 ソースファイルのビルドを行う。

# cd /usr/src/redhat/SPECS
# rpmbuild -bp --target=i686 kernel-2.6.spec

リンクの作成
# cd /usr/src
# ln -s /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18.i686 linux

6.再構築


 再構築前にバックアップ、不要ファイルの削除、コンフィグの設定を行う。
 以下の手順で行う。

# cd /usr/src/linux

 コンフィグのバックアップを取る。

# mv .config .config.bak

 不要ファイルの削除を行う。

# make mrproper

 作成するカーネルの名称を変更する。
 ここでは名称を「CentOS (2.6.18-GEODE.LX)」と設定することにする。
 名称は各自好きなように指定しても問題ない。
 viエディタで、以下のように編集を行う。

# vi Makefile

...
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 18
EXTRAVERSION = -GEODE.LX
...

 コンフィグの設定を行う。
 今回は「GeodeLX」用にカーネルを作成するので、「i586」用のコンフィグをコピーする。

# cp /usr/src/redhat/SOURCES/kernel-2.6.18-i586.config .config

コンフィグ設定を有効にする。

# make oldconfig
 ここでいくつか選択を要求されるが、全て「Enter」で飛ばす。

 続いて、CPUのプロフェッサーをGeodeLXに変更する。

# make menuconfig

 上記コマンドにより次のようなウィンドウが開く。



 プロセッサーの設定
 「Processor type and features」にカーソルを合わせ「Select」を押す。
 「Processor famiry」にカーソルを合わせ「Select」を押す。
 「Geode GX/LX」にカーソルを合わせ「Select」を押す。
 「Exit」、「Exit」として、menu の最初に戻る。

 次の設定も行う。(該当部分でエラーが出るため)
 「Device Drivers」にカーソルを合わせ「Select」を押す。
 「SCSI device support」にカーソルを合わせ「Select」を押す。
 「SCSI low-level drivers」にカーソルを合わせ「Select」を押す。
 「Buslogic SCSI support」にカーソルを合わせ、スペースキーを 押して、選択をはずす(空白にする)。
 「Exit」、「Exit」、「Exit」として、menu の最初に戻る。

 「Device Drivers」にカーソルを合わせ「Select」を押す。
 「Sound」にカーソルを合わせ「Select」を押す。
 「Sound card support」にカーソルを合わせ、スペースキーを 押して、選択をはずす(空白にする)。
 「Exit」、「Exit」、「Exit」、「Yes」として、設定を終了。

USB無線LANアダプタを使用できるようにするために、 「MIRSMG3D-OSIN-0008リモートアクセス環境実装手順書」の
2.無線LAN環境の実装 の「1.ドライバファイルの書き換え」にしたがって、ファイルの一部に修正を加える。
 実際の再構築作業を開始する。

# make bzImage; make modules

# make modules_install
# make install

 それぞれ、ある程度の時間を要する。



7.grubの編集


 grubの編集を行い、起動時の設定を行う。
 デフォルトで起動時にリコンパイルしたカーネルが起動するように設定する。

# vi /boot/grub/grub.conf

 上から13行目の「hiddenmenu」の下に以下の文を追加。

title CentOS (2.6.18-GEODE.LX)
root (hd0,0)
kernel /vmlinuz-2.6.18-GEODE.LX ro root=/dev/VolGroup00/LogVol00 rhgb quiet irqpoll
initrd /initrd-2.6.18-GEODE.LX.img

 さらに、上から10行目を「default=0」と書き換える。

 保存して編集を終了。

 以上で、再起動しカーネルが正常起動カーネルのリコンパイル作業の完了である。





関連文書