55 KVM工具使用指南-LibcarePlus概述
55.1 概述
LibcarePlus 是一个用户态进程热补丁框架,可以在不重启进程的情况下对 Linux 系统上运行的目标进程进行热补丁操作。热补丁可以应用于 CVE 漏洞修复,也可以应用于不中断应用服务的紧急 bug 修复。
55.2 软硬件要求
在 openEuler 上使用 LibcarePlus,需要满足一定的软硬件要求:
- 当前LibcarePlus支持 x86 体系架构和arm64体系架构。
- LibcarePlus 可以在任何支持安装 libunwind、 elfutils 以及 binutils 的 Linux 发行版系统上运行。
- LibcarePlus 使用ptrace()系统调用,需要对应Linux发行版本的相关编译选项支持。
- LibcarePlus 制作热补丁时,依赖原可执行文件的符号表,因此,请勿过早将符号表strip掉。
- 对于开启selinux的Linux系统,需要自行适配对应的selinux规则。
55.3 注意事项和约束
使用 LibcarePlus,需遵循以下热补丁规范和约束:
- 仅支持对 C 语言编写的代码,不支持汇编语言等。
- 代码文件名必须符合 C 语言标识符命名规范:由字母(A-Z,a-z)、数字 (0-9)、下划线“_”组成;并且首字符不能是数字