设置实时修补通道
每次更新完整内核包时都需要重启。 因此,采用实时修补功能的客户,其分配的通道内不应包含更新版本的内核。 对于采用实时修补的客户,实时修补通道中会提供针对正在运行内核的更新。
可通过两种方式管理实时修补通道:
使用内容生命周期管理克隆产品树,并去除比正在运行的内核更新的内核版本。 此过程在 administration:content-lifecycle-examples.adoc#enhance-project-with-livepatching 中进行了说明。 这是推荐的解决方案。
或者,使用 spacewalk-manage-channel-lifecycle 工具。
此过程更为手动,需要命令行工具以及 Web UI。
此过程在 SLES 15 SP5 的本节中进行了说明,但也适用于 SLE 12 SP4 或更高版本。
1. 为实时修补使用 spacewalk-manage-channel-lifecycle
|
spacewalk-manage-channel-lifecycle 已被弃用,并将在即将发布的版本中移除。建议用户切换到受支持且功能丰富的内容生命周期管理 (CLM) API。 |
克隆的供应商通道在开发时应以 dev 作为前缀,在生产时应以 testing 或 prod 作为前缀。
在此过程中,您创建一个 dev 克隆通道,然后将该通道升级为 testing。
-
在客户端上的命令提示符下,以 root 身份获取当前软件包通道树:
# spacewalk-manage-channel-lifecycle --list-channels Spacewalk Username: admin Spacewalk Password: Channel tree: 1. sles15-sp7-pool-x86_64 \__ sle-live-patching15-pool-x86_64-sp7 \__ sle-live-patching15-updates-x86_64-sp7 \__ sle-manager-tools15-pool-x86_64-sp7 \__ sle-manager-tools15-updates-x86_64-sp7 \__ sles15-sp7-updates-x86_64 -
使用带有
spacewalk-manage-channel参数的init命令自动创建原始供应商通道的新开发克隆:spacewalk-manage-channel-lifecycle --init -c sles15-sp7-pool-x86_64
-
检查
dev-sles15-sp7-updates-x86_64是否在您的通道列表中可用。
检查您创建的 dev 克隆通道,并去除任何需要重启的内核更新。
-
从 中选择客户端以检查当前内核版本,并记下
Kernel字段中显示的版本。 -
在 SUSE Multi-Linux Manager Web UI 中,从 中选择客户端,导航到 选项卡,并选择
dev-sles15-sp7-updates-x86_64。 导航到Patches选项卡,然后单击 列出/去除补丁。 -
在搜索栏中键入
kernel,并识别与您的客户端当前使用的内核匹配的内核版本。 -
去除所有比当前安装的内核更新的内核版本。
您的通道现在已设置为实时修补,并可以升级到 testing。
在此过程中,您还将实时修补子通道添加到您的客户端,准备应用。
-
在客户端的命令提示符下,作为
root,将dev-sles15-sp7-pool-x86_64通道升级并克隆到新的testing通道:# spacewalk-manage-channel-lifecycle --promote -c dev-sles15-sp7-pool-x86_64
-
在 SUSE Multi-Linux Manager Web UI 中,从 中选择客户端,并导航到 选项卡。
-
选中新的
test-sles15-sp7-pool-x86_64自定义通道以更改基础通道,并选中两个相应的实时修补子通道。 -
单击 下一步,确认细节正确,然后单击 确认 以保存更改。
现在可以选择和查看可用的 CVE 补丁,并通过实时修补应用这些重要的内核更新。