やり方はたくさんあるんだと思うんだけど、いつもやってるゆとりな方法。
いつもここを見ているので、まとめておきたくなった。
http://kernhack.hatenablog.com/entry/2014/12/25/001336
make localmodconfig
make menuconfig
ccache make -j4 bzImage
ccache make -j4 modules
localmodconfigで今ロードしているモジュールをビルドするように自動でconfigureしてくれる。つまり、今の環境のカーネルを入れ替えても動作するようなビルドをしてくれる。「本当に」動作するかは普段の行いと、1日一万回感謝のカーネルビルドをしているか否かと、メンテナーへの崇拝と、宇宙線の影響に依存する。
menuconfigでcursesベースのGUI風画面でビルドの設定ができる。あらかじめncurses-develをインストールしておくこと。ここでカーネルのバージョン名を変えたりとかができる。"-mykernel"とかをつけておくと、grubが見やすくなる。先頭に"-"を付けておくとカッコいい。
bzImageでカーネル本体のビルド、modulesは文字通りカーネルモジュールのビルド。nprocなどでCPUコア数を把握してから並列数を決めよう。ccacheを忘れると気付いたら出社時間になっているかもしれないから注意だ。
インストールは
make modules_install
make install
grub2-mkconfig -o /boot/grub2/grub.cfg