如何删除 Ubuntu 上再也不使用的旧内核

提问:过去我已经在个人Ubuntu上升级了几回内核。如今我想要删除这些旧的内核镜像来节省个人磁盘空间。如何用最简单的方法删除Ubuntu上先前版本的内核?linux

 

在Ubuntu上,有几个方法来升级内核。在Ubuntu桌面中,软件更新容许你天天检查并更新到最新的内核上。在Ubuntu服务器上,最为重要的安全更新项目之一就是 unattended-upgrades 软件包会自动更新内核。然而,你也能够手动用apt-get或者aptitude命令来更新。shell

随着时间的流逝,持续的内核更新会在系统中积聚大量的再也不使用的内核,浪费你的磁盘空间。每一个内核镜像和其相关联的模块/头文件会占用200-400MB的磁盘空间,所以由再也不使用的内核而浪费的磁盘空间会快速地增长。安全

GRUB管理器为每一个旧内核都维护了一个GRUB入口,以备你想要使用它们bash

做为磁盘清理的一部分,若是你再也不使用这些,你能够考虑清理掉这些镜像。服务器

 

如何清理旧内核镜像

在删除旧内核以前,记住最好留有2个最近的内核(最新的和上一个版本),以防主要的版本出错。如今就让咱们看看如何在Ubuntu上清理旧内核。spa

在Ubuntu内核镜像包含了如下的包。code

  • linux-image-: 内核镜像
  • linux-image-extra-: 额外的内核模块
  • linux-headers-: 内核头文件

首先检查系统中安装的内核镜像。blog

  1. $ dpkg --list|grep linux-image
  2. $ dpkg --list|grep linux-headers

在列出的内核镜像中,你能够移除一个特定的版本(好比3.19.0-15)。get

  1. sudoapt-get purge linux-image-3.19.0-15
  2. sudoapt-get purge linux-headers-3.19.0-15

上面的命令会删除内核镜像和它相关联的内核模块和头文件。it

注意若是你尚未升级内核那么删除旧内核会自动触发安装新内核。这样在删除旧内核以后,GRUB配置会自动升级来移除GRUB菜单中相关GRUB入口。

若是你有不少没用的内核,你能够用shell表达式来一次性地删除多个内核。注意这个括号表达式只在bash或者兼容的shell中才有效。

  1. sudoapt-get purge linux-image-3.19.0-{18,20,21,25}
  2. sudoapt-get purge linux-headers-3.19.0-{18,20,21,25}

    上面的命令会删除4个内核镜像:3.19.0-1八、3.19.0-20、3.19.0-21 和 3.19.0-25。

    若是GRUB配置因为任何缘由在删除旧内核后没有正确升级,你能够尝试手动用update-grub2命令来更新配置。

    1. sudo update-grub2

    如今就重启来验证GRUB菜单是否已经正确清理了。

相关文章
相关标签/搜索