有的时候,我们需要对一些包进行重新编包验证问题,例如怀疑某个包的安装脚本有问题(debian包会包含安装删除的脚本),那么在不需要源码的情况下,我们可以直接对该deb包进行解压,修改认为有问题的脚本,再重新编包。那么接下来就来分享一下如何将其他人的包,进行再处理:
我们以kylin-software-center_4.5.60kylin_amd64.deb为例进行重新编包:
1.创建解压缩过程中需要用到的文件
mkdir DEBUILD_DEB
mkdir DEB
mkdir DEB/DEBIAN
2. 解压deb包到 DEB下
deb包的存储路径 是你存放deb包的地方,我这里是在DEB的父目录下,执行的命令,所以直接写的DEB ,如果不在DEB的父目录下,需要加上确定的路径:
dpkg -X "deb包的存储路径"/ kylin-software-center_4.5.60kylin_amd64.deb DEB
3.解压文件到/DEB/DEBIAN下
解释同上:
dpkg -e "包的路径"/kylin-software-center_4.5.60kylin_amd64.deb /DEB/DEBIAN
4.打开需要修改的文件,进行相应的操作
5.重新编包
dpkg-deb -b DEB/ DEBUILD_DEB/
到这里从新编包就生效了,对于linux研发,尤其多方合作的情况下,有的时候很可能是第三方包内的脚本书写不规范或者有问题,会导致自己本身的组件出现问题,(像应用商店,尤其定制的就会因为多方组件出现问题,显示在应用商店上),而分析其他deb包 也是家常便饭,今天的分享就到这里啦,小白一个,欢迎大家进行建议~