CentOS kickstart-强制内核版本

CentOS kickstart-强制内核版本

我想使用特定内核版本(略低版本)来启动某些服务器,但无法找出 kickstart 文件中的正确语法。我尝试在“%packages”部分中指定此语法,同时使用带减号前缀的内核包(以将其删除)和不带前缀的条目,但我收到了多库错误消息。

来自 kickstart 文件:

%packages --nobase
-kernel-2.6.32-504.23.4.el6.x86_64
kernel-2.6.32-504.16.2.el6.x86_64
...other packages...

错误信息:

Protected multilib versions:
kernel-2.6.32-504.23.4.el6.x86_64 != kernel-2.6.32-504.16.2.el6.x86_64

谢谢!

答案1

根据 Petter 的建议,降级 %post 部分中的内核是可行的:

%post
rpm -ivh --oldpackage http://my.repo.server/centos/6.6/updates/x86_64/Packages/kernel-2.6.32-504.16.2.el6.x86_64.rpm
rpm -ivh --oldpackage http://my.repo.server/centos/6.6/updates/x86_64/Packages/kernel-firmware-2.6.32-504.16.2.el6.x86_64.rpm

谢谢!

答案2

你的语法是正确的:

%packages kernel-2.6.32-504.16.2.el6.x86_64

通常会安装特定的包及其依赖项(如果有)。

Multilib 错误通常表示 32 位和 64 位库之间的交互存在问题,但根据我的经验,它也可能表示核心包之间存在无法解决的冲突。

建议让系统处于这种状态,然后使用 提取完整的软件包列表rpm -qa | sed 's/.rpm//',然后将其粘贴到 kickstart%post部分。

相关内容