打patch-patch适配
el7 源码:
cloud-init-19.4-7.el7.src.rpm
适配对象:
cloud-init-19.4-7.el7.src.rpm
背景重现:
更新cloud-init,执行rpmbuild -bp失败,patch适配时遇到了问题
背景重现:
pushd /root/rpmbuild/SPECS/
rpmbuild -bp cloud-init.spec
popd
查找问题:
首先:查看源patch信息:
第二:找到对应的文件:
A) ls <your_path>/rpmbuild/BUILD (显然最新的版本信息和报错patch的不匹配)
[user@kvm230102:/your_path/rpmbuild/BUILD]
$ls /your_path/rpmbuild/BUILD
cloud-init-19.4
B)查看下cloud.cfg (最新cloud.cfg中name: cloud_user信息行数不匹配)
旧patch对应信息如下:
最新的cloud.cfg对着的name: cloud_user是第57行
扫描二维码关注公众号,回复:
12323555 查看本文章
重新适配:
首先:备份cloud-init-19.4目录:
cd $your_path/rpmbuild/BUILD
cp -rfa cloud-init-19.4 cloud-init-19.4.orig
第二:修改cloud-init-19.4中cloud.cfg信息:
vim cloud-init-19.4/rhel/cloud.cfg
第三:重新打patch,并cloud-init本地仓库内替换旧patch
diff -Nuar cloud-init-19.4.orig/ cloud-init-19.4/ > cloud-init-alinux-user.patch
$cat cloud-init-huaweilinux-user.patch
diff -Nuar cloud-init-19.4.orig/rhel/cloud.cfg cloud-init-19.4/rhel/cloud.cfg
--- cloud-init-19.4.orig/rhel/cloud.cfg 2020-11-02 13:46:51.140147587 +0800
+++ cloud-init-19.4/rhel/cloud.cfg 2020-11-02 14:27:46.832423249 +0800
@@ -54,7 +54,7 @@
system_info:
default_user:
- name: cloud-user
+ name: huaweilinux
lock_passwd: true
gecos: Cloud User
groups: [adm, systemd-journal]
最后:patch打好后再次适配验证<通过>: