搜索

7.7. 自动订阅将来的内核到实时补丁流

download PDF

您可以使用 kpatch-dnf DNF 插件订阅系统,从而修复内核补丁模块(也称为内核实时补丁)提供的修复。该插件为系统当前使用的任何内核启用自动订阅,以及在以后安装地内核。

先决条件

  • 有 root 权限。

流程

  1. (可选)检查所有安装的内核和您当前运行的内核:

    # dnf list installed | grep kernel
    Updating Subscription Management repositories.
    Installed Packages
    ...
    kernel-core.x86_64            5.14.0-1.el9              @beaker-BaseOS
    kernel-core.x86_64            5.14.0-2.el9              @@commandline
    ...
    
    # uname -r
    5.14.0-2.el9.x86_64
  2. 安装 kpatch-dnf 插件:

    # dnf install kpatch-dnf
  3. 启用自动订阅内核实时补丁:

    # dnf kpatch auto
    Updating Subscription Management repositories.
    Last metadata expiration check: 1:38:21 ago on Fri 17 Sep 2021 07:29:53 AM EDT.
    Dependencies resolved.
    ==================================================
     Package                             Architecture
    ==================================================
    Installing:
     kpatch-patch-5_14_0-1               x86_64
     kpatch-patch-5_14_0-2               x86_64
    
    Transaction Summary
    ===================================================
    Install  2 Packages
    …​

    这个命令订阅所有当前安装的内核,以接收内核实时补丁。命令还会为所有安装的内核安装并应用最新的累积实时补丁(如果有)。

    将来,当您更新内核时,将在新的内核安装过程中自动安装实时补丁。

    内核补丁模块也安装到 /var/lib/kpatch/ 目录中,供 systemd 系统和服务管理器以后重启时载入。

    注意

    当给定内核没有可用的实时补丁时,将安装空的实时补丁软件包。一个空的实时打补丁软件包将有一个 0-0 的 kpatch_version-kpatch_release,如 kpatch-patch-5_14_0-1-0-0.el9.x86_64.rpm。空 RPM 安装会将系统订阅到以后为给定内核提供的所有实时补丁。

验证

  • 验证是否所有安装的内核都已打了补丁:

    # kpatch list
    Loaded patch modules:
    kpatch_5_14_0_2_0_1 [enabled]
    
    Installed patch modules:
    kpatch_5_14_0_1_0_1 (5.14.0-1.el9.x86_64)
    kpatch_5_14_0_2_0_1 (5.14.0-2.el9.x86_64)

    输出显示您正在运行的内核以及其它安装的内核分别通过 kpatch-patch-5_14_0-1-0-1.el9.x86_64.rpmkpatch-patch-5_14_0-2-0-1.el9.x86_64.rpm 软件包进行修复。

    注意

    输入 kpatch list 命令不会返回空的实时修补软件包。改为使用 rpm -qa | grep kpatch 命令。

    # rpm -qa | grep kpatch
    kpatch-dnf-0.4-3.el9.noarch
    kpatch-0.9.7-2.el9.noarch
    kpatch-patch-5_14_0-284_25_1-0-0.el9_2.x86_64

其他资源

  • kpatch(1)dnf-kpatch(8)手册页
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.