如何在CentOS,RHEL和Fedora中删除旧的未使用的内核

在本文中,我们将展示如何在RHEL / CentOS / Fedora系统上删除旧的/未使用的内核映像。 但是,在删除旧的内核之前,同样重要的是让您的内核保持最新; 安装最新版本以利用新的内核功能,并保护您的系统免受在旧版本中发现的漏洞。

要在RHEL / CentOS / Fedora系统中安装或升级到最新的内核版本,请阅读本指南:

  1. 如何在CentOS 7中安装或升级到最新的内核版本

注意 :相反,建议保持至少一个或两个旧的内核回退,以防更新有问题。

要显示系统上运行的当前版本的Linux(内核),请运行此命令。

# uname -sr
Linux 3.10.0-327.10.1.el7.x86_64

列出系统上的所有安装的内核

您可以列出系统上安装的所有内核映像。

# rpm -q kernel
kernel-3.10.0-229.el7.x86_64
kernel-3.10.0-229.14.1.el7.x86_64
kernel-3.10.0-327.3.1.el7.x86_64
kernel-3.10.0-327.10.1.el7.x86_64

在CentOS / RHEL上删除旧的/未使用的内核

您需要安装yum-utils ,它是与yum集成的各种实用工具,通过以多种不同的方式扩展其原始功能,使其更强大,更易于使用。

# yum install yum-utils

其中一个实用程序是package-cleanup ,您可以使用它来删除旧内核,如下所示,count标志用于指定要在系统上离开的内核数。

# package-cleanup --oldkernels --count=2
删除旧内核
Loaded plugins: fastestmirror, langpacks, product-id, versionlock
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-229.el7 will be erased
---> Package kernel.x86_64 0:3.10.0-229.14.1.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.1.2.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.14.1.el7 will be erased
--> Finished Dependency Resolution
Dependencies Resolved
===============================================================================================================================================================================================
Package                                       Arch                                    Version                                                Repository                                  Size
===============================================================================================================================================================================================
Removing:
kernel                                        x86_64                                  3.10.0-229.el7                                         @anaconda                                  131 M
kernel                                        x86_64                                  3.10.0-229.14.1.el7                                    @updates                                   131 M
kernel-devel                                  x86_64                                  3.10.0-229.1.2.el7                                     @updates                                    32 M
kernel-devel                                  x86_64                                  3.10.0-229.14.1.el7                                    @updates                                    32 M
Transaction Summary
===============================================================================================================================================================================================
Remove  4 Packages
Installed size: 326 M
Is this ok [y/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Erasing    : kernel-devel.x86_64                            1/4 
Erasing    : kernel.x86_64                                  2/4 
Erasing    : kernel-devel.x86_64                            3/4 
Erasing    : kernel.x86_64                                  4/4 
Loading mirror speeds from cached hostfile
* base: centos.mirror.snu.edu.in
* epel: repo.ugm.ac.id
* extras: centos.mirror.snu.edu.in
* rpmforge: kartolo.sby.datautama.net.id
* updates: centos.mirror.snu.edu.in
Verifying  : kernel-3.10.0-229.el7.x86_64                   1/4 
Verifying  : kernel-devel-3.10.0-229.14.1.el7.x86_64        2/4 
Verifying  : kernel-3.10.0-229.14.1.el7.x86_64              3/4 
Verifying  : kernel-devel-3.10.0-229.1.2.el7.x86_64         4/4 
Removed:
kernel.x86_64 0:3.10.0-229.el7           kernel.x86_64 0:3.10.0-229.14.1.el7           kernel-devel.x86_64 0:3.10.0-229.1.2.el7           kernel-devel.x86_64 0:3.10.0-229.14.1.el7          
Complete!

重要提示 :运行上述命令后,将删除所有旧的/未使用的内核,并保持当前的运行状态和旧的最新内核作为备份。

在Fedora上删除旧的/未使用的内核

Fedora现在使用dnf包管理器 ,一个新版本的yum包管理器 ,所以你需要使用这个命令来删除Fedora上的旧内核。

# dnf remove $(dnf repoquery --installonly --latest-limit -2 -q) 

自动删除旧内核的另一种替代方法是在yum.conf文件中设置内核限制,如图所示。

installonly_limit=2		#set kernel count

保存并关闭文件。 下次运行更新时,系统上只剩下两个内核。

您可能还想阅读以下有关Linux内核的相关文章。

  1. 如何在Linux中加载和卸载内核模块
  2. 如何将内核升级到Ubuntu中的最新版本
  3. 如何以持久和不持续的方式更改内核运行时参数

在本文中,我们介绍了如何在RHEL / CentOS / Fedora系统上删除旧的/未使用的内核映像。 您可以通过下面的反馈分享任何想法。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏