与包文件系统-3.2中的文件冲突

Zac*_*son 4 linux mono centos

经过多次尝试并试图谷歌这个问题,我卡住了,我正在寻找我的伙伴堆叠器的帮助.

维基tcadmin我要运行下面的命令

wget http://www.tcadmin.com/installer/mono-2.11.4-i386.rpm
yum -y install mono-2.11.4-i386.rpm --nogpgcheck
/opt/mono-2.11.4/bin/mozroots --import --sync --quiet
/opt/mono-2.11.4/bin/mono --aot -O=all /opt/mono-2.11.4/lib/mono/2.0/mscorlib.dll
for i in /opt/mono-2.11.4/lib/mono/gac/*/*/*.dll; do /opt/mono-2.11.4/bin/mono --aot -O=all $i; done
Run Code Online (Sandbox Code Playgroud)

当我到达yum部分时它会失败并输出此错误.

file / from install of mono-2.11.4-bi.x86_64 conflicts with file from package filesystem-3.2-18.el7.x86_64
Run Code Online (Sandbox Code Playgroud)

大多数网站和地方都建议使用覆盖或强制命令,但这听起来很愚蠢,可能会导致我自己和系统出现问题.

我已经向该公司提供了一张关于此问题供应维基的公司的机票,但我还没有回复.

另一个建议是提取rpm并逐个移动文件,但这非常耗时.

机票响应如下:

强制安装是安全的,因为所有文件都放在/opt/mono-2.11.4中,但是在centos 7上有一个bug会阻止tcadmin正常工作.

小智 9

对于发生在这个线程上的其他任何人,我很高兴地报告,虽然我没有遇到这个错误安装mono(这是一个完整的其他过程)我在尝试安装TCAdmin时遇到了它,但我能够使用rpmrebuild修改规范后,在CentOS 7上完成TCAdmin的安装.

只需安装rpmrbebuild,运行rpmrebuild -pe {packagename}.rpm,向下滚动到%files部分并删除任何违规目录的行(在我的例子中,'/'和'/ home'目录),保存并退出,按y,并记下结果位置.在我的情况下,它是/root/rpmbuild/RPMS/noarch/{packagename}.rpm.

遍历该目录并运行yum -y install ./{packagename.rpm,它将毫不费力地安装.

同样也应该适用于返回与文件系统错误冲突的任何其他包.只需相应调整上述示例中的包名称即可.

*由于古老的艾哈迈德·萨米尔为指向我在与他的职务正确的方向这个线程.


小智 5

我在尝试在 CentOS 7 上安装 Fluentd 代理时遇到了同样的问题:

(venv)[user@machine01 tmp]$ sudo rpm -ivh td-agent-2.1.1-0.x86_64.rpm 
warning: td-agent-2.1.1-0.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID a12e206f: NOKEY
Preparing...                          ################################# [100%]
    file /opt from install of td-agent-2.1.1-0.x86_64 conflicts with file from package filesystem-3.2-18.el7.x86_64
Run Code Online (Sandbox Code Playgroud)

我不会说降级整个操作系统是解决方案。也许一个优雅的解决方法是重建 .rpm 文件以避免那些产生冲突的文件系统。您可以通过使用 rpmrebuild 命令修改规范文件来完成此操作。

但是,如果您信任要安装的软件,或者无论如何都想尝试是否有效,那么一个更简单(更快)的解决方法是强制 rpm 安装。这就是我所做的...

(venv)[user@machine01 tmp]$ sudo rpm -ivh --force td-agent-2.1.1-0.x86_64.rpm 
warning: td-agent-2.1.1-0.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID a12e206f: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:td-agent-2.1.1-0                 ################################# [100%]
adding 'td-agent' group...
adding 'td-agent' user...
Installing default conffile...
prelink detected. Installing /etc/prelink.conf.d/td-agent-ruby.conf ...
Configure td-agent to start, when booting up the OS...
Run Code Online (Sandbox Code Playgroud)

...它对我有用

(venv)[user@machine01 tmp]$ sudo systemctl start td-agent.service
(venv)[user@machine01 tmp]$ sudo systemctl status td-agent.service
td-agent.service - LSB: td-agent's init script
   Loaded: loaded (/etc/rc.d/init.d/td-agent)
   Active: active (running) since vie 2014-12-12 09:34:09 CET; 4s ago
  Process: 17178 ExecStart=/etc/rc.d/init.d/td-agent start (code=exited, status=0/SUCCESS)
...
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你