Linuxカーネル・コンパイル入門 後編:カーネルの導入とパラメータの設定ソース・コードが自由に入手できるLinuxならではの楽しみが,カーネルをコンパイルして,独自のシステムに仕立てられること。例えば,より新しいカーネルのソース・コードを入手し,コンパイルして導入すれば,最新機能をいち早く試せる。初めて「カーネル・コンパイル」に挑戦する人に向けて,カーネルを安全に導入する方法を具体的に解説する。今回は,実際にカーネルをコンパイルして導入する手順を紹介する。 前回は主に,カーネル・コンパイル前の心構えや注意点を説明した。ディストリビュータやシステム・ベンダーのサポートを受けている人は,カーネル・コンパイルを実行するとサポート対象外になることや,実用しているシステムではなく試験用あるいは予備のシステムで事前に試してから実行することなどを述べた。 今回は,実際にカーネルをコンパイルして導入する手順を紹介する。 カーネルの導入方法カーネルのコンパイルに必要な手順を図1に示す。以下では,この手順に沿ってカーネルをコンパイルしていこう。
前回は,カーネル・ソース入手時の注意点を主に説明したが,具体的な入手方法には触れなかった。カーネル開発グループが配布しているオリジナルのカーネル・ソースは,サイト「The Linux Kernel Archives」(写真1)からダウンロードできる。
2006年1月下旬時点の記事作成時の最新版は,「linux-2.6.15.1(カーネルのバージョン2.6.15.1)」である(2007年10月時点では2.6.23,関連記事)。 ソース・コードの展開 入手したカーネルは,カーネルのコンパイルだけを考えれば,どこに展開しても構わない。しかし,慣習として/usr/srcディレクトリに展開されるものとなっている。カーネル・ソースを使うプログラムでは,このディレクトリを“決め打ち”しているものもある*1。 また,何かのトラブルがあった時に「カーネル・ソースはどこだ?」とさまざまなディレクトリ内を探し回ることになるのも面倒なので,慣習に従い/usr/srcディレクトリ内に置くことにしよう。 カーネルを収録した日経Linux(2006年3月号)の付録メディアを持っていて,付録メディアから/usr/srcディレクトリにカーネル・ソースをコピーする場合は,
と入力する。続いて,
と入力してソース・アーカイブを展開する。展開したときに,「linux-バージョン番号」という形式の名前のディレクトリを作る。今回の例では,linux-2.6.15.1ディレクトリができる。 シンボリック・リンクの作成 これをこのまま/usr/srcに作っておいて,このディレクトリからカーネル・ソース・ツリー(動作中のシステムのカーネル・ソースの登録場所)である/usr/src/linuxディレクトリに,
のようにして,シンボリック・リンクを張っておくとよい。なぜなら, ・前述したように,/usr/src/linuxディレクトリにカーネル・ソースがあることを決め打ちしているソフトがあるかもしれない・複数のカーネル・ソースを置いている*2時に,現用のカーネル・ソースがどれか分かりやすい からだ。そのため,カーネル・バージョンを含んだディレクトリ名のままでソースを展開しておき,それから/usr/src/linuxディレクトリにシンボリック・リンクを張るようにする。 シンボリック・リンクを作成する際に,/usr/src/linuxディレクトリが既にシステムに存在している場合もあるだろう。その場合は,いったん/usr/src/linuxディレクトリ全体を削除してから,上記コマンドを実行して新たなリンクを作成しよう。
出典:日経Linux 2006年3月号
113ページより
(記事は執筆時の情報に基づいており,現在では異なる場合があります) |