如何应用内核补丁

我一直在从主线存储库安装内核 – 一切都很简单,只有*.deb文件,可以对它们做简单的dpkg -i 。 但是如何手动应用补丁0001-base-packaging.patch0002-debian-changelog.patch0003-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构建内核时才需要应用这些修补程序。

如果您从源代码构建它,那么这些是您需要遵循的步骤:

  1. 安装这些包:

     sudo apt-get install git build-essential kernel-package fakeroot libncurses5-dev 
  2. 获取源代码:

     mkdir anyname; cd anyname git clone git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack v4.4 
  3. 复制修补程序文件。

  4. 更改到内核目录:

     cd v4.4 
  5. 进行任何自定义更改。

  6. 应用补丁:

     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 
  7. 使:

     cp /boot/config-`uname -r` .config gedit .config make oldconfig make menuconfig make clean make -j `getconf _NPROCESSORS_ONLN` deb-pkg LOCALVERSION=-custom 
  8. 安装生成的deb:

     sudo dpkg -i ../*.deb 
  9. 更新GRUB并重启:

     sudo update-grub; sudo reboot