私は現在、カーネルソースツリーのsecurity
ディレクトリに保存されているLinuxセキュリティモジュールを開発しています。次のコマンドを使用してカーネルをコンパイルしてインストールすると、モジュールがロードされ、すべてが正常に機能します。
fakeroot make -j9 -f debian/rules.gen binary-Arch_AMD64_none_AMD64
apt remove linux-image-4.19.0-9-AMD64-unsigned
dpkg -i linux-image-4.19.0-9-AMD64-unsigned_4.19.118-2_AMD64.deb
ただし、上記のコマンドを使用してモジュールに変更を加えてカーネルを再構築した場合、すべてのビルド出力を削除してカーネル全体を再コンパイルしない限り、それらは新しいイメージに含まれません。
カーネルの特定の部分、つまりsecurity
ディレクトリのみを再構築する方法はありますか?
大学教授の助けを借りて見つけました。ファイルを削除する必要がありますdebian/stamps/build_AMD64_none_AMD64
。
# The next line make sure only the required parts are rebuild
rm debian/stamps/build_AMD64_none_AMD64
# Rebuild the kernel
fakeroot debian/rules source
fakeroot make -j9 -f debian/rules.gen binary-Arch_AMD64_none_AMD64