web-dev-qa-db-ja.com

カーネルパッチを適用する方法

メインラインリポジトリ からカーネルをインストールしました-そこはすべてシンプルで、*.debファイルだけで、簡単なdpkg -iを実行できます。しかし、パッチ0001-base-packaging.patch0002-debian-changelog.patch0003-configs-based-on-Ubuntu-4.4.0-0.10.patchを手動で適用するにはどうすればよいですか?

7

README at mainline に記載されているとおり:

これらのバイナリパッケージは、以下のコミット時のメインラインまたは安定した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
    
9
Raphael