如何防止Yum更新内核

时间:2020-01-09 10:39:33  来源:igfitidea点击:

当我们运行生产服务器时,我们不想做的一件事就是每次出现新更新时都升级内核。为什么?因为这是唯一的Linux更新操作,完成后需要重新启动,并且在生产环境中,我们通常不会停机。

场景

因此,我们终于有了稳定可靠的基于rpm的服务器集。生活是美好的,你不认为自己必须在一段时间内做任何其他事情。

然后,由于某种原因,我们以root身份在命令行中运行:

#yum -y -d0 update

恰好为yum命令的所有提示提供了肯定的答案。这也恰好尽可能安静地运行。这次发生的情况包括对内核软件包的更新。

现在,事情无法正常进行。我们怎么能避免这种情况?

尽管我们显然现在迫切需要休假,但是我们应该重新查看系统更新时间表,文档(当然,这些文档是细致的,最新的并且随时可用),尤其是控制yum的配置文件。

但是首先,为什么不更新内核?

  • 事情有时会破裂。更新可能会使模块或者驱动程序不兼容,从而使诸如无线卡之类的设备不再起作用。

  • 维护服务器群之间的版本。如果我们混合使用不同的服务器发行版和一些内置盒,则肯定适用。

  • 手动编译内核,从而绕过yum提供的自动配置

  • 我们为正常运行时间感到非常骄傲,因此执行重新启动以激活新内核将不会对我们有最大的好处。因此,如果我们从不重启,则无需更新它。

我们为什么要更新内核?

  • 主要是安全性。内核就像应用程序一样具有漏洞,即使不进行修补,也可以为坏人提供破坏系统的机会。

  • 特别是如果我们不使用第三方存储库,请保持版本最新。主要发行版发布了包括内核在内的所有代码的补丁,并努力在发布前对其进行测试以确保稳定性。不更新是滞后的,在升级到主要版本时,这可能会使事情变得更加困难。

  • 利用一项新功能(或者修复先前已损坏的功能)将使我们更适合内核更新。

要更新内核,只需执行上面的操作即可。或者,更好的是,消除命令行开关,以便我们可以控制更新过程并查看正在发生的情况。跑:

#yum update

并按照提示进行操作。

防止Yum更新内核

但是,如果我们不想盲目更新内核,则可以将以下内容添加到/etc/yum.conf文件中:

exclude=kernel*

或者,如果我们坚持使用原始配置文件并通过CLI控制所有内容,请使用

#yum exclude=kernel* update

这两种方法都会消除内核的更新,甚至不会将其包含在潜在的更新列表中。