本文主要是介绍制作RPM安装包安装时出现:xxxxx conflicts with file from package.....,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
安装出现这种问题很常见,一般是文件冲突引起的。
仔细看一下他说和那个包的文件冲突了!
一般报错都是这种格式:
file 某个文件 from install of 即将安装的安装包 conflicts with file from package 系统已经安装的安装包
如果你要安装某个rpm,遇到这种情况,你可以:
- 卸载已经安装的包
- 加
–replacefiles
参数,会替换掉冲突的文件 - 加
--force
参数,也会替换掉冲突的文件
如果你是安装包的制作者,你的软件包文件和其他软件冲突了。那就换一下你的文件的名字,不和其他软件冲突,保证所有用户都能无障碍安装即可。
这里要说的是另一种匪夷所思的情况
我自己制作的安装包,居然是目录和系统有冲突!:
这个问题折腾了两天多,好在,在网上找到了rpmrebuild
工具,通过这个工具对rpm进行解析,然后拿它和以前没问题的安装包进行了一下对比,终于发现了问题:
看到了吧,系统中的目录,权限应该是755,然而我的目录权限是775,安装的时候目录权限一致才会进行合并,权限不一致,系统直接认为是有冲突!
如果想批量修改权限的话,只需要:
find . -type d | xargs chmod -v 755
这样就会修改当前目录下所有目录的权限为755
我这里是一些特殊原因造成了打包过程中权限错误。如果其他小伙伴制作rpm的安装包也遇到这个问题,已经要先检查一下目录的权限,权限的不一致将会导致这个问题。
如果用户自作聪明--force
无脑安装了导致系统出现问题,那软件的锅可就大发了…
参考链接:
- 这篇文章帮了我大忙,就是他的step9给了我灵感找出了症结所在,(虽然他的解决方案治标不治本)https://blog.csdn.net/nirendao/article/details/79302135
- rpmrebuild下载:https://sourceforge.net/projects/rpmrebuild/
这篇关于制作RPM安装包安装时出现:xxxxx conflicts with file from package.....的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!