gpt4 book ai didi

Debian - 如何覆盖包的文件

转载 作者:行者123 更新时间:2023-12-05 02:13:12 25 4
gpt4 key购买 nike

我有两个名称不同的 Debian 软件包:configA.deb、configB.deb。两者在控制文件中都有以下几行:

Provides: my-config
Replaces: my-config

两者都提供相同的内容 - file: config

当我在 configA.deb 已经安装的情况下尝试安装 configB.deb 时,出现以下错误:

dpkg: error processing archive configB.deb (--install):
trying to overwrite '/home/user/configs/config', which is also in package configA.deb

我想安装 configB.deb 而不首先删除/清除 configA.deb 并且不使用选项 --force-overwrite。可能吗?

最佳答案

Debian 软件包不能覆盖彼此的文件。使用诸如 update-alternatives 之类的东西将文件符号链接(symbolic link)到一个包或另一个包提供的文件,而不会破坏任何包安装文件的完整性。或者使用 Conflicts: 在您尝试安装包 B 时强制删除包 A,反之亦然。作为第三种可能的方法,我不推荐的一种变通的解决方法是使用来自包的 protected 资源内部的副本覆盖每个包的 postinst 中的这个文件。

关于Debian - 如何覆盖包的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55080329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com