如何应用内核补丁
我一直在从主线存储库安装内核 – 一切都很简单,只有*.deb
文件,可以对它们做简单的dpkg -i
。 但是如何手动应用补丁0001-base-packaging.patch
, 0002-debian-changelog.patch
, 0003-configs-based-on-Ubuntu-4.4.0-0.10.patch
?
正如主线的 README中所述:
这些二进制包代表下面提交的主线或稳定Linux内核树的构建:
v4.4 (afd2ff9b7e1b367172f18ba7f693dfb62bdcb2dc)
要获取构建它们的源,请获取以下提交:
git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack v4.4
并按以下顺序在顶部应用以下补丁:
0001-base-packaging.patch 0002-debian-changelog.patch 0003-configs-based-on-Ubuntu-4.4.0-0.10.patch
这意味着只有在从源代码构建内核而不是从*.deb
构建内核时才需要应用这些修补程序。
如果您从源代码构建它,那么这些是您需要遵循的步骤:
-
安装这些包:
sudo apt-get install git build-essential kernel-package fakeroot libncurses5-dev
-
获取源代码:
mkdir anyname; cd anyname git clone git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack v4.4
-
复制修补程序文件。
-
更改到内核目录:
cd v4.4
-
进行任何自定义更改。
-
应用补丁:
patch -p1 < ~/anyname/0001-base-packaging.patch patch -p1 < ~/anyname/0002-debian-changelog.patch patch -p1 < ~/anyname/0003-configs-based-on-Ubuntu-4.4.0-0.10.patch
-
使:
cp /boot/config-`uname -r` .config gedit .config make oldconfig make menuconfig make clean make -j `getconf _NPROCESSORS_ONLN` deb-pkg LOCALVERSION=-custom
-
安装生成的deb:
sudo dpkg -i ../*.deb
-
更新
GRUB
并重启:sudo update-grub; sudo reboot