注意:

使用内核转换软件包删除 Red Hat 兼容内核

简介

出于兼容性原因,在任何 Oracle Linux 系统上默认始终安装 RHCK。但是,在大多数 Oracle Linux 系统上,UEK 发行版通常配置为默认内核。从 UEK(而不是 RHCK)引导足以使系统正常运行。在某些情况下,您可能希望从 Oracle Linux 系统中完全删除 RHCK 以防止其引导此内核。此类配置适用于以下用例:

通过 kernel-transition 软件包,您可以准备 Oracle Linux 6 或 Oracle Linux 7 系统以删除 RHCK,而无需删除相关软件包(如 bluez、fuse 和 nonqbalance),这些软件包可能对于系统操作是必需的。请注意,kernel-transition 软件包本身不包含任何文件,而是将软件包相关项从 kernel 软件包传输到 kernel-uek 软件包。

注:在 Oracle Linux 8 系统上,可以专门构建软件包,以避免对特定内核类型的依赖。Oracle Linux 8 没有 kernel-transition 软件包。当前未使用的任何内核都可以在不产生影响的情况下从系统中删除。例如,要从运行 UEK 的 Oracle Linux 8 系统中删除 RHCK,只需键入:

sudo dnf remove kernel

目标

在本教程中,您将学习:

先决条件

从现有的 Oracle Linux 系统中删除 RHCK

  1. 安装 kernel-transition 软件包。

    sudo yum install kernel-transition
    
  2. 删除 RHCK。

    sudo yum remove kernel
    

    在命令删除依赖于 RHCK 的剩余软件包之前,始终会显示确认提示。

    注意:yum 提示您删除软件包时,仅删除与 kernel 软件包相关的软件包。如果系统提示您删除系统所需的软件包,请输入 n 以防止删除该软件包。还应保留任何其他相关软件包。

删除 RHCK 后,运行 yum update 命令随后仅更新 UEK。

在 Oracle Linux 系统中恢复 RHCK

要重新安装 RHCK,请运行以下命令:

sudo yum install kernel

安装不带 RHCK 的系统

通过使用 kickstart,您可以在安装 Oracle Linux 时排除 RHCK 以获得以下配置:

在 kickstart 配置文件中,在 %packages 部分中包括以下行:

-kernel
kernel-transition

这些配置定义会导致 kickstart 将 kernel-transition 软件包与 kernel-uek 软件包一起包含在安装中,同时忽略 kernel 软件包。

如果创建定制安装 ISO,则可以将 kernel 软件包替换为 kernel-transition 软件包,以便依赖项解析在 kernel-transition 中而不是 kernel 中提取。请注意,即使安装介质上存在 kernel-transition,软件包本身也不会自动包含在 Oracle Linux 安装中,因为它提供的内核版本低于任何 RHCK 的版本。因此,如果需要软件包,则必须手动安装该软件包。

详细信息

更多学习资源

浏览 docs.oracle.com/learn 上的其他实验室,或者在 Oracle Learning YouTube 频道上访问更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 以成为 Oracle 学习资源管理器。

有关产品文档,请访问 Oracle 帮助中心