Ubuntuカーネルをカスタマイズする方法
カーネルのカスタマイズは万人向けではありません。これを試す前に、システムを壊す可能性があることに注意してください。.
カーネルをカスタマイズしたい理由はたくさんあります。特に必要なものだけを必要とするサーバーや専用のデバイスを実行している場合は、必要なサービスだけにカーネルをトリミングすることをお勧めします。また、実行しているカーネルで現在サポートされていないハードウェアをサポートするようにカーネルにパッチを適用する必要があるかもしれません。.
この記事はあなたのカーネルにパッチをあてる方法を説明するのではなく、単にあなたの現在のものをカスタマイズする方法を説明します。私はあなたのカーネルにパッチを当てる方法を説明する別のフォローアップ記事とあなたがそうしたいと思ういくつかの実用的な理由を持っています.
まず、現在実行しているカーネルのバージョンを把握する必要があります。そのためにunameコマンドを使います。
$ uname -r
2.6.17-10 - ジェネリック
今、私たちはあなたのカーネル用のLinuxソースをインストールする必要があります、私が2.6.17-10カーネルを動かしていることに注意してください、それでインストーララインはそれを反映します。この記事の目的のために、実行しているものは何でもカーネル番号に置き換えることができます。コンパイルを助けるためにcursesライブラリと他のいくつかのツールもインストールする必要があります。.
sudo apt-get linux-source-2.6.17カーネルパッケージlibncurses5-dev fakeroot
Linuxソースがどこにインストールされるのか知りたい場合は、dpkgコマンドを使用してパッケージ内のファイルを確認できます。これが私のシステムの出力です。
$ dpkg -L linux-source-2.6.17
/.
/ usr
/ usr / src
/usr/src/linux-source-2.6.17.tar.bz2
/ usr / share
/ usr / share / doc
/usr/share/doc/linux-source-2.6.17
(トリミング済み)
ソースがzipファイルの/ usr / srcディレクトリにインストールされていることがわかります。.
作業を簡単にするために、sudoを使って新しいシェルを開くことで、自分自身をrootモードにします。これを行う方法は他にもありますが、私はこの方法を好みます.
sudo / bin / bash
インストールできるように、ディレクトリをソースの場所に変更します。 bunzipユーティリティがインストールされていない場合は、インストールする必要があるかもしれません。 (それは私の上にありました)
cd / usr / src
bunzip2 linux-source-2.6.17.tar.bz2
tar xvf linux-source-2.6.17.tar
ln -s linux-source-2.6.17 linux
カスタムコンパイルプロセスに使用する既存のカーネル設定のコピーを作成します。 'という文字はチルダの下の文字です〜
cp / boot / config-'uname -r' /usr/src/linux/.config
それでは、カーネルをカスタマイズできるようにするユーティリティを起動します。
cd / usr / src / linux
menuconfigを作る
まず、「代替構成ファイルのロード」に進んで、.configファイルをロードします。 (ただエンターを押す)
これでユーティリティ内に入ったので、カスタムカーネルのオプションを設定できます。ナビゲーションはとても簡単です。迷子になった場合は上部に凡例があります。ネットワークを選択してEnterキーを押すと、そのカテゴリに入ります。.
アマチュア無線のサポート一体何のためにインストールされているのでしょうか。あなたは*によってそれがカーネルに組み込まれていることに気付くでしょう.
を押すと?キー、私たちはその特定の項目のための助けを見ることができます。これが説明です。
まあ、私はすぐにそれを無効にするつもりです。とにかくそれが私のカーネルにインストールされているのはなぜですか。 Escを押してヘルプ画面を閉じ、次にNを押してカーネルからそれを除外します。.
必要な選択をすべて終えたら、Exitを押してプロンプトが表示されたら設定を保存します。.
これでコンパイルの準備が整いました。最初に、すべてがコンパイルの準備ができていることを確認するために、make cleanを行います。.
make-kpkgクリーン
次に、実際にカーネルをコンパイルします。これには長い時間がかかるので、面白いことを見つけてください。.
fakeroot make-kpkg -initrd -append-to-version = -custom kernel_image kernel_headers
このプロセスにより、カーネルを含む2つの.debファイルが/ usr / srcに作成されます。 linux-image ****ファイルは実際のカーネルイメージで、他のファイルにはdpkgで両方をインストールできます。ファイル名はあなたのシステムではおそらく異なるでしょう.
これらの次のコマンドを実行すると、新しいカーネルが新しいデフォルトカーネルとして設定されることに注意してください。これは物事を破ることができます!マシンが起動しない場合は、GRUBのローディングメニューでEscを押して、古いカーネルを選択してください。その後、/ boot / grub / menu.lstでカーネルを無効にするか、もう一度試してコンパイルします。.
dpkg -i linux-image-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb
dpkg -i linux-headers-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb
今すぐあなたのマシンを再起動します。すべてうまくいったら、新しいカスタムカーネルを実行しているはずです。これを確認するには、unameを使用します。正確な数はあなたのマシンで異なることに注意してください.
uname -r
2.6.17.14-ubuntu1-custom
私はカーネルのカスタマイズに関する一連の記事を書く予定ですので、最新情報はRSSフィードを購読してください。.
また、完全な開示のために、HowtoForgeの記事からこれを行う方法を学びました。これは、Linuxに関する非常に高度なチュートリアルのための素晴らしいWebサイトです。私はこの記事をもっと“ Ubuntu”にしようとしましたが、この記事のステップの多くは似ていることに気付くでしょう。.