Linux内核卸载和禁止更新

注意:对于可以用好几条命令实现的,第一条命令已经验证,其他的命令参考自网上,没有进行验证。

查看Linux系统内核的命令有下面几条

dpkg --get-selections | grep linux-image
dpkg --get-selections | grep linxu-headers

dpkg --list | grep linux-image
dpkg --list | grep linux-headers

ls /boot/

linux内核镜像包含的包

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

删除内核的命令有下面几条

以删除 linux-image-3.19.0-15这个内核为例子

sudo apt purge linux-image-3.19.0-15
sudo apt purge linux-headers-3.19.0-15

sudo apt remove linux-image-3.19.0-15
sudo apt remove linux-extra-3.19.0-15

sudo dpkg --purge linux-image-3.19.0-15

通过shell表达式一次删除多个内核

对于系统中安装了多个没用的内核,一个一个删比较麻烦,可以采用shell表达式来一次删除多个内核

sudo apt purge linux-image-3.19.0-{18,20,21}
sudo apt purge linux-image-3.19.0-{18.20,21}

这样一下就删除了三个内核

禁止更新内核的命令有下面几条

sudo apt-mark hold linux-image-3.19.10-18
sudo apt-mark hold linux-image-extra-3.19.10-18-generic

echo "linux-image-3.19.10-18-generic hold" | dpkg --set-selections

恢复原来的设定(即回到原先内核可以更新的状态)

sudo apt-mark unhold linux-image-3.19.0-15
sudo apt-mark unhold linux-image-3.19.0-15-generic

内核卸载完后,更新一下grub

sudo update-grub

结语:设置为hold状态的软件包,对于 apt upgrade 命令不会升级,但是依然可以通过 apt install 命令将其升级并将其状态切换到install。因此,从安全性角度看,这样做其实效果不大,仅仅是避免了偶然的操作失误。本人还是推荐使用 apt install 来进行“定点升级”。

参考博客:

https://blog.csdn.net/w383117613/article/details/78535923

https://blog.csdn.net/weixin_40522162/article/details/80302735

https://www.centos.bz/2017/07/apt-upgrade-ubuntu-system-kernel/

posted @ 2019-07-20 21:59  Youpeng  阅读(2998)  评论(0编辑  收藏  举报