Linux内核热补丁方案对比
荣涛 2021年10月13日

1. Linux 内核热补丁

1.1. linux 内核热补丁技术背景

1.1.1. update和upgrade的区别

1.1.1.1. Linux upgrade (升级)

升级是软件的最新版本。升级的频率比更新的频率低,并且通常以软件的重大改进,新功能,增强的功能和其他明显的更改。通常考虑到比较大的变化和更高的性能,必须升级操作系统。

1.1.1.2. Linux update (更新)

软件更新是补丁程序,并且可以充当您正在使用的系统的增强版本。通常,更新将解决可能导致先前版本中的问题。更新发生的次数比升级发生的次数要多得多,并且通常更着重于细微调整以改善用户体验或安全性,而不是进行任何重大的软件修改。

1.1.2. 需求

客户对厂商提供linux服务都有安全补丁周期SLA的要求(一般是1个月到3个月),由于内核频繁的安全补丁并要求重启服务器,对Linux的SLA以及运维带来了很大的困难。

1.1.3. 历史

2008年MIT的 JeffArnold 开发了 KSplice ,支持免重启(无数据结构修改的补丁)的内核安全补丁升级。 KSplice 2011年被Oracle收购,社区开始开发自己的热升级能力,2014年 Redhat推出了 Kpatch, SUSE推出了 Kgraft, 同一年CloudLinux推出了KernelCare。 Ubuntu在14.04以后也推出了Canonical Livepatch

1.2. 主要项目

项目 厂商 简介 自动化程度 工作级别
KSplice Oracle linux社区第一个热补丁项目,后被Oracle收购 全自动 指令集
Kpatch RedHat 代码开源,但是需要RHEL的license才可以使用 管理员 函数
Kgraft SUSE 在企业版SELS中提供 管理员 函数
Canonical Livepatch Canonical 只在 Ubuntu Advantage Program中提供 全自动
KernelCare CloudLinux 支持所有发行版,按月按Server收费 全自动

这些项目的开源版本都有以下类似的信息:

WARNING: Use with caution! Kernel crashes, spontaneous reboots, and data loss may occur!

上图链接CHAPTER 6. APPLYING PATCHES WITH KERNEL LIVE PATCHING

2. 参考链接

  • Linux 内核热补丁方案介绍对比
  • Live patching the Linux kernel
  • A guide to kernel live patching on Red Hat Enterprise Linux 7 and 8
  • CHAPTER 6. APPLYING PATCHES WITH KERNEL LIVE PATCHING
  • How to Choose Linux Kernel Live Patching Software
  • Fast and Scalable VMM Live Upgrade in Large Cloud Infrastructure.pdf
  • QEMU Live Update
  • https://lore.kernel.org/qemu-devel/1596122076-341293-1-git-send-email-steven.sistare@oracle.com/
  • https://lore.kernel.org/lkml/1588812129-8596-1-git-send-email-anthony.yznaga@oracle.com/
  • https://lore.kernel.org/lkml/1595869887-23307-1-git-send-email-anthony.yznaga@oracle.com/
  • History of Linux Kernel Live Patching
  • What Is Linux Kernel Live Patching?
  • Introducing kpatch: Dynamic Kernel Patching
  • Live Kernel Patching Using kGraft
  • https://www.linux-magazine.com/Issues/2008/95/KSplice
Copyright (C) CESTC Com.

Linux内核热补丁方案对比相关推荐

  1. 内核热补丁,真的安全么?

    简介: Linux 内核函数的热替换"撞上"函数调用约定还靠谱吗? Linux 内核热补丁可以修复正在运行的 linux 内核,是一种维持线上稳定性不可缺少的措施,现在比较常见的比 ...

  2. linux内核热修复,揭露内核黑科技 - 热补丁技术真容

    原创 理查德 Linux阅码场 6月12日 内核热补丁是一种无需重启操作系统,动态为内核打补丁的技术.系统管理员基于该技术,可以在不重启系统的情况下,修复内核BUG或安全漏洞,可以在最大程度上减少系统 ...

  3. 零代价修复海量服务器的内核缺陷——UCloud内核热补丁技术揭秘

    下述为UCloud资深工程师邱模炯在InfoQ架构师峰会上的演讲--<UCloud云平台的内核实践>中非常受关注的内核热补丁技术的一部分.给大家揭开了UCloud云平台内核技术的神秘面纱. ...

  4. Android热更新五:四大热修复方案对比分析

    很早之前就想深入的研究和学习一下热修复,由于时间的原因一直拖着,现在才执笔弄起来. Android而更新系列: Android热更新一:JAVA的类加载机制 Android热更新二:理解Java反射 ...

  5. (4.2.32)各大热补丁方案分析和比较

    选自: [腾讯bugly干货分享]微信Android热补丁实践演进之路 各大热补丁方案分析和比较 继插件化后,热补丁技术在2015年开始爆发,目前已经是非常热门的Android开发技术.其中比较著名的 ...

  6. 内核热补丁 kpatch-build 编译脚本对 CROSS_COMPILE 的妙用

    在交叉编译时,常常需要设定 CROSS_COMPILE 变量指定编译器的前缀,即不包含最后的 gcc 字符的名称. 一个简单的示例如下: CROSS_COMPILE="aarch64-lin ...

  7. Android各大热补丁方案分析和比较

    原文出处:http://blog.zhaiyifan.cn/2015/11/20/HotPatchCompare/ 最近开源界涌现了很多热补丁项目,但从方案上来说,主要包括Dexposed.AndFi ...

  8. 各大热补丁方案分析和比较

    markzhai's home 首页 分类 关于 归档 标签 各大热补丁方案分析和比较 发表于 2015-11-20   |   分类于 android   |   11条评论 最近开源界涌现了很多热 ...

  9. kpatch 内核热补丁几个使用问题记录

    kpatch 内核热补丁相关问题记录 相关工具版本信息 内核版本:linux-3.16.35 kpatch 版本:0.8.0 源码地址:https://github.com/dynup/kpatch ...

最新文章

  1. 使用mysql做saas_一种SaaS企业平台数据库系统及其连接方法与流程
  2. 舞伴配对问题java_舞伴配对问题
  3. 怎样挑选最健康的酸奶?
  4. Shell in AIX Web端 自动远程执行重启tomcat服务命令
  5. 清除string内容_前端面试之javascript相关内容整理一
  6. 火狐与Chrome浏览器的移动端调试模式(手机页面、自适应)
  7. Flutter 深度学习 — 动画(补间动画、Hero动画、交错动画)
  8. 动手实现MVC: 4. AOP的设计与实现
  9. 打印工资条怎么做到每个人都有表头明细_一键批量生成工资条并群发,操作步骤详解...
  10. java fn replace_JSTL fn:replace()函数替换 换行符
  11. 当web应用包含了websocket长连接,如何在web应用前加一层nginx转发
  12. php 分表帝国,帝国cms附表如何分表
  13. 基于DragonBoard410C的智能管家
  14. 数学笔记13——定积分
  15. XUPT_ACM2021寒假训练第二周练习记录
  16. 流媒体技术介绍(中篇)
  17. 重生之我是赏金猎人-SRC漏洞挖掘(五)-轻松GET某src soap注入
  18. 研华PCI板卡开发(5)快速入门(5)群组操作
  19. [已解决]vscode环境 ros系统 msg文件不生成.h文件
  20. alipay本地jar安装

热门文章

  1. MySQL常用优化指南,及大表优化思路(值得收藏)
  2. 商业大亨微信草花服务器,商业大亨2每日答题和服务器进度奖励
  3. java8简化的可变参数调用,Java8新特性--方法引用
  4. 【mysql union all limit的使用】
  5. 【node内存泄漏耗尽之解决方法】
  6. Python用户交互
  7. 手机调用ArcGIS Server发布的Rest地图服务不显示问题
  8. Byobu:打造多任务的Terminal
  9. 提高测试脚本复用性降低DOM结构引起路径变化的影响
  10. BZOJ1901 Zju2112 Dynamic Rankings 【树状数组套主席树】