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/
Linux内核卸载和禁止更新的更多相关文章
- Ubuntu系统---系统驱动丢失、Kernel内核卸载、禁止更新
Ubuntu系统---系统驱动丢失.Kernel内核卸载.禁止更新 一早开机发现,ubuntu字体异常,字体很大,直接反应是驱动坏了.一查,确实丢失英伟达驱动,为什么呢?莫名的消失.想知道:1.英伟达 ...
- linux 内核邮件列表
第一节 - 一般性问题 1. 为什么有些时候使用“GNU/Linux"而另一些时候使用“Linux”? 答:在这个FAQ中,我们尝试使用“linux”或者“linux kernel”来表示内 ...
- 为什么要编译Linux内核?
新的内核修订了旧内核的bug,并增加了许多新的特性.如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译Linux内核. 通常,更新的内核会支持更多的硬件,具 ...
- 解析Linux内核的基本的模块管理与时间管理操作---超时处理【转】
转自:http://www.jb51.net/article/79960.htm 这篇文章主要介绍了Linux内核的基本的模块管理与时间管理操作,包括模块加载卸载函数的使用和定时器的用法等知识,需要的 ...
- 【内核】Linux内核Initrd机制解析,内核更新步骤,grub配置说明
什么是Initrd initrd的英文含义是 boot loader initialized RAM disk,就是由boot loader初始化的内存盘.在 linux内核启动前, boot loa ...
- 云服务器-Ubuntu更新系统版本-更新Linux内核-服务器安全配置优化-防反弹shell
购入了一台阿里云的ESC服务器,以前都用CentOS感觉Yum不怎么方便,这次选的Ubuntu16.04.7 搭好服务之后做安全检查,发现Ubuntu16.04版本漏洞众多:虽然也没有涉及到16.04 ...
- 从头开始构建LINUX[内核更新和资料]
了解了LFS的内容后,至于内核的更新就一目了然了 http://www.cnblogs.com/2018/p/3979305.html http://www.cnblogs.com/2018/p/39 ...
- centos 更新linux内核
之前一直使用centos 7系统进行开发,centos 7.0 系统自带的linux内核版本为 linx 3.10,最近开发需要使用到socket的reuse port特性,该特性在linux 3.9 ...
- 如何更方便的查看Linux内核代码的更新记录【转】
转自:http://blog.csdn.net/lee244868149/article/details/44302819 Linux内核的更新非常的快,如何快速的了解这些更新呢?最一般的办法就是把新 ...
随机推荐
- stm32第一章cortex-M3处理器概述
处理器特点 哈弗结构3级流水线内核 实现Thumb-2指令集,告别切换32位的arm指令和16位的Thumb指令,优化性能和代码密度 结合可配置的嵌套向量中段控制器Nvic,提供非屏蔽中断NMI和32 ...
- 【AMAD】django-compressor -- 将JS和CSS文件压缩为一个缓存文件
简介 个人评分 简介 django-compressor1的example: {% load compress %} {% compress css %} <link rel="sty ...
- 编译Android系统
官方网址: http://source.android.com/source/building.html 下面摘录相关内容: Downloading and Building The Android ...
- python 创建目录文件夹
主要涉及到三个函数 1.os.path.exists(path) 判断一个目录是否存在 2.os.makedirs(path) 多层创建目录 3.os.mkdir(path) 创建目录 DEMO 直接 ...
- docker入门2--生命周期
容器的概念: 一句话概括容器:容器就是将软件打包成标准化单元,以用于开发.交付和部署. 容器镜像是轻量的.可执行的独立软件包 ,包含软件运行所需的所有内容:代码.运行时环境.系统工具.系统库和设置 ...
- nginx源码安装(CentOS版)
准备工作: 1) 配好网易yum源 登录此网站(http://mirrors.163.com/.help/centos.html),下载相应版本的yum源至服务器的/etc/yum.repos.d/目 ...
- SQL Server 学习之环境搭建
SQL Server 环境搭建 说明:本文是sqlServer的安装和测试环境的搭建 版本是SQLServer 2005版,由于该版本只能在Windows7或者更低的系统上才能安装,更高的系统请安装S ...
- Django使用DataTables插件总结
Django使用Datatables插件总结 文章中的例子已上传至github 基本使用 Datatables插件是一款方便简单的展示数据的列表插件.关于基本使用,官方网站上的已介绍的很详细,这里我再 ...
- 使用dockerfile 搭建django系统(nginx+redis+mongodb+celery)
背景 有需求需要对django系统进行docker化,以达到灵活部署和容灾.该系统基于django 2.2版本开发,数据库采用mongodb,服务器使用nginx,因系统有部分异步任务,异步任务则采用 ...
- (八)动态 sql
目录 什么是动态 sql sql 片段 foreach 标签 什么是动态 sql 我们之前在映射文件中,配置 sql 的时候,其实都是静态的 : <!--复杂查询--> <selec ...