FC3,FC4のカーネル・ソー スのインストール方法

<<トップページへ

概要

Fedora Core 3から、標準でカーネルソースがインストールされなくなりました。SRPMSからのインストール方法を書いてみます。まだlinuxを始めて1年程の初心 者なので間違い等があれば御指摘ください。

作業手順

1.SRPMSファイルのdownload

ソース入手先:updates のミラー

2.ソースのインストール

# rpm -ivh kernel-<version>.src.rpm
# cd /usr/src/redhat/SPECS
# rpmbuild -bp --target=<arch> kernel-2.6.spec

参考 rpmbuildのオプションについて
-bp
オプションはspec ファイルから "%prep" 段階を実行してソースを展開、パッチを適用する。
-ba
%prep, %build, %install を実行した後にバイナリパッケージとソースパッケージをビルドする。
-bb %prep, %build, %install を実行した後にバイナリパッケージをビルドする。
-bc %prep を実行した後にspec ファイルから "%build" 段階を実行する。 一般的には "make" と同じである。
-bi
%prep, %build を実行した後に spec ファイルから "%install" 段階を実行する。
"make install" と同じである。
-bl "list check" を実行する。 spec ファイルの "%files" セクションのマクロが展開され、 各ファイルが存在す るかの検証をするためのチェックが行われる。
-bs ソースパッケージだけをビルドする。
※カーネルソースは、/usr/src/redhat/BUILD/kernel-<version>/linux - <version>のように/usr/src/redhat/BUILD以下に展開されます。

もしカーネルのrpmを作成したい場合は rpmbuild コマンドに -ba または -bb のオプションを使用するとできます。ただしソースの変更が必要な場合は patch ファイルの作成とその適応をspecファイルに記述 する必要があります。

3.コンパイル等

# cd /usr/src
# cp -R -p /usr/src/redhat/BUILD/kernel-<version>/linux-<version>  /usr/src
# ln -s /linux-<version> /usr/src/linux

ここまででソースインストールは完了です。この後 configファイルに設定を行い作業を進めるとカーネルの 再構築という事になります。

# cd /usr/src/linux
# make mrproper
# ls configs/

kernel-2.6.14-i586.config       kernel-2.6.14-i686-xenU.config
kernel-2.6.14-i686-smp.config   kernel-2.6.14-i686.config
kernel-2.6.14-i686-xen0.config

# cp configs/kernel-2.6.14-i686.config .config

FedoraCore 4の場合、上のような設定ファイルが用意されています。
例えば、私のCPUは Pentium M なのでkernel-2.6.14-i686.configを選択します。カーネルを再構築しないのであれば、この後に
(※#
make gconfig configファイルに設定コマンド
# make bzImage && make modules
これで終わりにしておけば sprm のリビルド時にカーネルソースが必要になっても問題ないはずです。
もし再構築するのであれば※
make bzImage && make modules の前に make gconfig を実行して条件を入力した後にmake bzImage && make modules を実行してその後に

# make modules_install
#
installkernel (kernel-<version> + EXTRAVERSION =で指定した名前) arch/i386/boot/bzImage System.map

これで再構築したカーネルがインストールされます。またこの方法でインストールすると/usr/src/linux/Makefile の EXTRAVERSION = で指定した名前で /boot/grub/menu.lst に反映されます。

参考ページ

http://mcn.oops.jp/linux/topic1.5/kernel_rebuild.htm

http://www.stackasterisk.jp/tech/systemConstruction/fedoracore302_02.jsp

http://park15.wakwak.com/~unixlife/linux/kernel.html

http://www.sip.eee.yamaguchi-u.ac.jp/kou/diff-patch.html



▲このページのトップへ戻る

▲トップへ戻 る





Copyright©2005-2006  熊の巣  All Right Reserved.  管理人へメール