AirVergo

Web製作にまつわる雑記帳です。たまに更新してます。

Fedora21でVanilla Kernelをビルドしてみました。

2015/2/11

最近カーネルの勉強を始めようと思って、今回はVanilla Kernelをビルドして起動してみたので紹介します。

 

環境はFedora21 WorkStationです。

マシンはデスクトップCore i5機で行いました。

Arch Linuxの以下記事を参照して作業を進めました。

https://wiki.archlinux.org/index.php/Kernels/Compilation/Traditional

 

まず、ビルド用のディレクトリを作成します。

$ mkdir kernelbuild

$ cd kernelbuild

 

次に、https://www.kernel.org/ から最新のカーネルを取ってきます。

$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.19.tar.xz

 

次に解凍。

$ tar xvJf linux-3.19.tar.xz

 

カーネルソースコードのディレクトリに入って、ビルドの準備をします。

$ cd linux-3.19/

$ make mrproper

 

次にカーネルの設定をするmake menuconfigを行いたいのですが、依存パッケージがあるのでインストールします。

一旦rootになって

# yum install ncurses-devel

 

インストールが終わったら、元のディレクトリに戻ってmake menuconfigします。

$ make menuconfig

GUI画面がでてくるので、適当に設定します。設定ができたらsaveして

ビルドします。

 

$ make

自分の環境では1時間ほどかかりました。ビルドが終わったら

カーネルモジュールをインストールします。

ここからrootで作業しました。

 

# make modules_install

 

次にカーネルを/boot以下にコピーします。

# cp -v arch/x86/boot/bzImage /boot/vmlinuz-airvergo

 

次にinitramdisk作成します。mkinitrdを使用しました。

# mkinitrd /boot/initrd-airvergo.img 3.19.0

 

System.mapをコピーします。

# cp System.map /boot/System.map-airvergo

# ln -sf /boot/System.map-airvergo /boot/System.map

 

最後にGRUB2に設定します。

grub2-mkconfig -o /boot/grub2/grub.cfg

 

再起動して、カーネルをビルドしたものを選び、起動に成功すればOKです。

facebooktwittergoogle_plusredditpinterestlinkedinmail