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

查看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/

Linux内核卸载和禁止更新的更多相关文章

  1. Ubuntu系统---系统驱动丢失、Kernel内核卸载、禁止更新

    Ubuntu系统---系统驱动丢失.Kernel内核卸载.禁止更新 一早开机发现,ubuntu字体异常,字体很大,直接反应是驱动坏了.一查,确实丢失英伟达驱动,为什么呢?莫名的消失.想知道:1.英伟达 ...

  2. linux 内核邮件列表

    第一节 - 一般性问题 1. 为什么有些时候使用“GNU/Linux"而另一些时候使用“Linux”? 答:在这个FAQ中,我们尝试使用“linux”或者“linux kernel”来表示内 ...

  3. 为什么要编译Linux内核?

    新的内核修订了旧内核的bug,并增加了许多新的特性.如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译Linux内核. 通常,更新的内核会支持更多的硬件,具 ...

  4. 解析Linux内核的基本的模块管理与时间管理操作---超时处理【转】

    转自:http://www.jb51.net/article/79960.htm 这篇文章主要介绍了Linux内核的基本的模块管理与时间管理操作,包括模块加载卸载函数的使用和定时器的用法等知识,需要的 ...

  5. 【内核】Linux内核Initrd机制解析,内核更新步骤,grub配置说明

    什么是Initrd initrd的英文含义是 boot loader initialized RAM disk,就是由boot loader初始化的内存盘.在 linux内核启动前, boot loa ...

  6. 云服务器-Ubuntu更新系统版本-更新Linux内核-服务器安全配置优化-防反弹shell

    购入了一台阿里云的ESC服务器,以前都用CentOS感觉Yum不怎么方便,这次选的Ubuntu16.04.7 搭好服务之后做安全检查,发现Ubuntu16.04版本漏洞众多:虽然也没有涉及到16.04 ...

  7. 从头开始构建LINUX[内核更新和资料]

    了解了LFS的内容后,至于内核的更新就一目了然了 http://www.cnblogs.com/2018/p/3979305.html http://www.cnblogs.com/2018/p/39 ...

  8. centos 更新linux内核

    之前一直使用centos 7系统进行开发,centos 7.0 系统自带的linux内核版本为 linx 3.10,最近开发需要使用到socket的reuse port特性,该特性在linux 3.9 ...

  9. 如何更方便的查看Linux内核代码的更新记录【转】

    转自:http://blog.csdn.net/lee244868149/article/details/44302819 Linux内核的更新非常的快,如何快速的了解这些更新呢?最一般的办法就是把新 ...

随机推荐

  1. AWK---linux系统三剑客(三)

    grep .sed.awk被称为linux中的"三剑客". grep 更适合单纯的查找或匹配文本 sed  更适合编辑匹配到的文本 awk  更适合格式化文本,对文本进行较复杂格式 ...

  2. 最新 顺网科技java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.顺网科技得等10家互联网公司的校招Offer,因为某些自身原因最终选择了顺网科技.6.7月主要是做系统复习.项目复盘.Lee ...

  3. JavaSE基础(十二)--Java 对象和类

    Java 对象和类 Java作为一种面向对象语言.支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载 本节我们重点研究对象和类的概念. 对象:对象是类的一个实例(对象不是找个女朋友 ...

  4. [NOI2019]序列

    LOJ3158 , Luogu5470 从 \(a_1\dots a_n\) , \(b_1\dots b_n\) 中各选出 \(K\) 个数 , 且至少 \(L\) 组下标在两个数组中都被选择 , ...

  5. [Agc029B]Powers of two_贪心_树形dp

    Powers of two 题目链接:https://atcoder.jp/contests/agc029/tasks/agc029_b 数据范围:略. 题解: 可能一点思路都没有. 但是我们发现:如 ...

  6. jdk1.8 Maven 的安装教程

    1.下载java1.8    URL:    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-213315 ...

  7. 使用window.open 实现弹框和居中对齐

    // 打开页面方法 window.open(url, '_blank', centerStyle('600', '400')+',toolbar=no,menubar=no,resizeable=no ...

  8. CentOS7安装配置redis5集群

    一.服务器准备 本文准备了3台服务器 , 分别是 172.18.0.231 172.18.0.232 172.18.0.233 每台运行2个redis实例, 端口分别为7000 7001 ,即总共6个 ...

  9. hdu 1506 最大子矩阵面积

    //写动态规划的题目 要把主要问题提炼出来 这里的问题就是求area=(j-k+1)*a[i]  如果找到j k是解决这个题目的关键 这里暴力求肯定是要超时的 这里用dp来优化 #include< ...

  10. C语言如何才能使用bool类型

    解决办法:加上头文件#include<stdbool.h> ,就可以直接使用类型bool = true/false; #include<stdio.h> 2 #include& ...