<h1>カーネル再構築手順</h1>
<strong>
今回はCentOS6.6を使用して試しています。
今回はカーネルを最新版(4.0.7)にバージョンアップしてみます。
rootユーザで操作しています。
</strong>
<h2>カーネルのダウンロード</h2>
作業ディレクトリに移動します。
1 | cd /usr/src |
カーネルのソースを www.kernel.org からダウンロードをします。
1 | wget https: //www .kernel.org /pub/linux/kernel/v4 .x /linux-4 .1.1. tar .xz |
<h2>ダウンロードをしたカーネルを解凍してコンパイル</h2>
ダウンロードをしたカーネルを解凍して、回答したディレクトリに移動します。
1 2 | tar Jxvf linux-4.1.1. tar .xz cd linux-4.1.1 |
以下のコマンドで .config ファイルを作成します。
1 2 3 4 5 | cp -p /boot/config-2 .6.32-504.el6.i686 .config make oldconfig 省略..... |
上記のコマンドを実行すると、
たくさんの確認メッセージが出てきますが、 すべてEnterで答えています。
.configファイルが作成されたら、
以下のコマンドで、カーネルのコンパイルを始めます
1 2 3 4 5 6 7 8 9 10 11 12 | make 省略 H16TOFW firmware /edgeport/boot .fw H16TOFW firmware /edgeport/boot2 .fw H16TOFW firmware /edgeport/down .fw H16TOFW firmware /edgeport/down2 .fw IHEX firmware /edgeport/down3 .bin IHEX2FW firmware /whiteheat_loader .fw IHEX2FW firmware /whiteheat .fw IHEX2FW firmware /keyspan_pda/keyspan_pda .fw IHEX2FW firmware /keyspan_pda/xircom_pgs .fw [root@localhost linux-4.1.1] # |
特にエラーなく終了!
<h2>カーネルモジュールとカーネル本体のインストール</h2>
以下のコマンドでモジュールをインストールします。
1 2 3 4 5 6 7 8 | make modules_install 省略 INSTALL /lib/firmware/whiteheat_loader .fw INSTALL /lib/firmware/whiteheat .fw INSTALL /lib/firmware/keyspan_pda/keyspan_pda .fw INSTALL /lib/firmware/keyspan_pda/xircom_pgs .fw DEPMOD 4.1.1-watanabe4 [root@localhost linux-4.1.1] # |
特にエラーなく終了
以下のコマンドでモジュールがインストールされているかを確認します。
1 2 | ls /lib/modules/ 2.6.32-504.el6.i686 2.6.32-watanabe 4.1.1-watanabe4 |
以下のコマンドで、前回同様、カーネルをインストールします。
1 2 3 4 5 6 7 8 | installkernel 4.1.1-watanabe4 /usr/src/kernels/linux-4 .1.1 /arch/x86/boot/bzImage /usr/src/kernels/linux-4 .1.1 /System .map ERROR: modinfo: could not find module vmhgfs ERROR: modinfo: could not find module vsock ERROR: modinfo: could not find module vmware_balloon ERROR: modinfo: could not find module snd_page_alloc ERROR: modinfo: could not find module vmci ERROR: modinfo: could not find module crc_t10dif ERROR: modinfo: could not find module vmxnet |
いくつかエラーが出た?
新しいカーネルで起動すると、起動時にVM系のモジュールでエラーは出ていたが、一応起動には成功しました。
1 2 | uname -a Linux localhost.localdomain 4.1.1-watanabe4 #1 SMP Wed Jul 8 04:45:01 PDT 2015 i686 i686 i386 GNU/Linux |
以上になります。