制作RPM安装包安装时出现:xxxxx conflicts with file from package.....

安装出现这种问题很常见,一般是文件冲突引起的。
仔细看一下他说和那个包的文件冲突了!
一般报错都是这种格式:

file 某个文件 from install of 即将安装的安装包 conflicts with file from package 系统已经安装的安装包

如果你要安装某个rpm,遇到这种情况,你可以:

  • 卸载已经安装的包
  • –replacefiles参数,会替换掉冲突的文件
  • --force参数,也会替换掉冲突的文件

如果你是安装包的制作者,你的软件包文件和其他软件冲突了。那就换一下你的文件的名字,不和其他软件冲突,保证所有用户都能无障碍安装即可。


这里要说的是另一种匪夷所思的情况

我自己制作的安装包,居然是目录和系统有冲突!:
制作RPM安装包安装时出现:xxxxx conflicts with file from package....._第1张图片
这个问题折腾了两天多,好在,在网上找到了rpmrebuild 工具,通过这个工具对rpm进行解析,然后拿它和以前没问题的安装包进行了一下对比,终于发现了问题:
制作RPM安装包安装时出现:xxxxx conflicts with file from package....._第2张图片
看到了吧,系统中的目录,权限应该是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/

你可能感兴趣的:(Linux,linux,rpm,安装包制作)