2008年6月21日土曜日

Linuxカーネルのコンパイル(ビルド)方法

突然だが、Linuxカーネルのコンパイル方法を書いてみる。

とは言っても、とても簡単です。



Linuxのディストリビューションは、とりあえず、Fedora8を基準に書きますが、

他のディストリビューションでも大きな違いはないでしょう。

手順:(比較的新しい(2.6.18〜)を想定)



  1. Linuxカーネルをダウンロード

  2. .configファイルの作成

  3. make && sudo make modules_install && sudo make install

  4. 再起動。(再起動時のGRUBの選択画面で、インストールしたカーネルを選ぶ。)


これぐらいでしょうか。それぞれを詳しく述べてみます。

  1. Linuxカーネルをダウンロード

  2. http://www.kernel.org/

    から、好きなカーネルをダウンロード。適当なディレクトリへ展開する。

    なお、別の方法として、「ketchup」というツールを使うと、最新版への追従が楽になります。

    ketchupについては、また別の機会に。
  3. .configファイルの作成

  4. Fedoraなら、まずは、「kernel-devel」パッケージをインストールします。
    # yum install kernel-devel
    次に、インストールした「kernel-devel」パッケージの.configファイルを、先ほどLinuxカーネルを展開した直下にコピーします。
    # cp /usr/src/kernel/2.6.xx.x-x.fc8-x86_64/.config さっきのディレクトリ
    次に、make menuconfigなどで、カーネルの機能を有効にしたり・無効にしたりします。
    # make menuconfig
    よく分からなければ、何もいじらなくても大丈夫じゃないかな。(ま、ちょっと覚悟はしとけ?)

  5. make && sudo make modules_install && sudo make install

  6. 上記コマンドを入力。
    うまく行けば/boot/に、新しいカーネルイメージがインストールされ、
    /boot/grub/grub.confに新しいカーネル用のエントリが追加される。
    ただし、デフォルト起動の設定にはなっていないので、必要なら、デフォルト設定を変更する。
  7. 再起動。(再起動時のGRUBの選択画面で、インストールしたカーネルを選ぶ。)

  8. # reboot
    で、再起動後、GRUBの選択画面で、インストールしたカーネルを選ぶ。

    うまく、起動して、動作すると良いですね。

0 件のコメント:

コメントを投稿