久しぶりに自分でカーネルをコンパイルしてみました。その時のメモを残しておきます。
Debian Busterはカーネルバージョンが4.19のままです。今回は5.2.5にしてみました。
目次
コンパイル環境の準備
sudo apt-get install build-essential libncurses-dev fakeroot dpkg-dev sudo apt-get build-dep linux
カーネル・ソースの入手
The Linux Kernel Archives から最新のソースを入手します。カーネルソースを展開します。例えば
xzcat linux-XXX.tar.xz | tar xvf -
コンパイルオプションの設定: config
/boot にあるconfig-X.XX.XX-hogeをカーネルソース・ディレクトリに.config という名前でコピーします。
cp /boot/config-X.XX.X-hoge-amd64 /path/to/linux-X.XX.X/.config
.config の編集
CONFIG_SYSTEM_TRUSTED_KEYSを空にしないとコンパイルできません。
CONFIG_SYSTEM_TRUSTED_KEYS=""
あとは以下のようにしておきました:
# CONFIG_MODULE_SIG is not set # CONFIG_MODULE_SIG is not set # CONFIG_DEBUG_INFO is not set
古いconfigを新しいカーネルで使うために内容を更新する必要があります。それには次を実行します:
make oldconfig
コンパイル!
nice make -j n bindeb-pkg LOCALVERSION=-foo-bar
“-j”オプションは並列処理の数を指定します。
LOCALVERSIONも指定できます。
コンパイルはCore i7 8700 の場合、10分くらいで終わります。
インストール
linux-headers-X.XX.X_amd64.deb, linux-libc-dev-X.XX.X_amd64.deb をインストールしてから linux-X.XX.X_amd64.debをインストールします。