代码拉取完成,页面将自动刷新
同步操作将从 openEuler/syscare 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
SysCare是一个系统级热修复软件,为操作系统提供单机级与集群级安全补丁和系统错误热修复,主机无需重新启动即可修复该系统问题。 当前仅融合统一内核态/用户态热补丁技术,用户需聚焦在自己核心业务中,系统修复问题交予SysCare进行处理。后期计划根据修复组件的不同,提供系统热升级技术,进一步解放运维用户提升运维效率。
可以利用系统组件源代码与相应的patch问题,制作出相应组件补丁的RPM(包含补丁文件、依赖信息与配置信息等). 制作的补丁RPM,可以上传到相应的补丁仓库中,集群的系统demon定时去查询补丁仓库, 对系统中运行的CVE与软件错误进行热修复,保证系统安全、稳定、高效运行。
dnf update & dnf install syscare
安装编译依赖
$ kernel-version=$(uname -r)
$ dnf install -y kernel-source-$kernel-version kernel-debuginfo-$kernel-version kernel-devel-$kernel-version
$ dnf install -y elfutils-libelf-devel openssl-devel dwarves python3-devel rpm-build bison cmake make gcc g++
编译并安装
git clone https://gitee.com/openeuler/syscare.git
cd syscare
mkdir tmp
cd tmp
cmake -DCMAKE_INSTALL_PREFIX=/usr -DKERNEL_VERSION=$(uname -r) ..
make
make install
rpm -ivh syscare-*.rpm
$ syscare build \
--patch-name "HP001" \
--patch-description "CVE-2021-32675" \
--source ./redis-6.2.5-1.src.rpm \
--debuginfo ./redis-debuginfo-6.2.5-1.x86_64.rpm \
--output ./output \
./0001-Prevent-unauthenticated-client-from-easily-consuming.patch
补丁制作详细使用说明请见build/README.md
$ sudo syscare apply redis-6.2.5-1/HP001
$ sudo syscare active redis-6.2.5-1/HP001
$ sudo syscarae deactive redis-6.2.5-1/HP001
$ sudo syscare remove redis-6.2.5-1/HP001
$ sudo syscare accept redis-6.2.5-1/HP001
$ syscare status redis-6.2.5-1/HP001
$ syscare info redis-6.2.5-1/HP001
$ syscare target redis-6.2.5-1/HP001
$ syscare list
$ syscare reboot
命令行详细使用说明请见cli/README.md
-gdwarf
-ffunction-sections
-fdata-sections
参数;STT_FUNC
或STT_OBJECT
完全相同的符号修改:
存在同名文件,并且局部变量和函数名称完全一致,实现可能不一致;-g3
编译选项,特定编译优化选项,特定gcc plugin等;__attribute__((ifunc("foo")))
;__thread int foo
;$ git clone https://gitee.com/openeuler/syscare.git
$ cd syscare & git branch -b Feature_XXXX
$ vim src/upatch/xxxx & git commit -m ""
$ git push origin
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。