首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拆分debian包-如何正确处理文件?

拆分debian包-如何正确处理文件?
EN

Stack Overflow用户
提问于 2014-02-06 09:25:01
回答 1查看 513关注 0票数 1

我正在尝试将debian包分割成更小的包。

最初的包MyPackage-1.0.deb被拆分成几个较小的包(MyPackage-2.0.debMyPackage-config-2.0.deb)。

MyPackage-1.0.deb包含所有文件,在拆分过程中,我将所有文件从目录/etc移到包MyPackage-config-2.0.deb

dpkg-buildpackage过程无错误。

当我尝试通过apt-get upgrade进行升级时,我会收到以下消息。

代码语言:javascript
复制
Unpacking MyPackage-config (from .../MyPackage-config-2.0.deb) ...
dpkg: error processing /var/cache/apt/archives/MyPackage-config-2.0.deb (--unpack):
 trying to overwrite '/etc/MyPackage.conf', which is also in package MyPackage 1.0
dpkg-deb: subprocess paste killed by signal (Broken pipe)

这个软件包没有安装统一,直到我用apt-get -o Dpkg::Options::="--force-overwrite" upgrade强迫它。

在文件debian/control中有:

代码语言:javascript
复制
Source: MyPackage
Section: metapackages
Priority: optional
Maintainer: Just Me <me@example.com>
Standards-Version: 3.9.3
Build-Depends: debhelper (>= 4)

Package: MyPackage
Architecture: i386
Conflicts: gnumeric
Pre-depends: MyPackage-config
Depends: libreoffice-common
Description: This package

Package: MyPackage-config
Essential: yes
Architecture: i386
Depends: openssh-server
Description: config files

如何拆分包以防止错误?

EN

回答 1

Stack Overflow用户

发布于 2014-02-07 17:27:37

您可能希望将这些行添加到MyPackage-config中:

代码语言:javascript
复制
Breaks: MyPackage (<< 2.0)
Replaces: MyPackage (<< 2.0)

这告诉dpkg不允许同时安装MyPackage 1.0和MyPackage 2.0 (显然,它们都希望拥有/etc/MyPackage.conf),而且MyPackage 2.0可以接管以前由MyPackage 1.0拥有的一些文件。

有关深度信息,请参见http://www.debian.org/doc/debian-policy/ch-relationships.html

撇开关系不谈,在MyPackage上使用“必要的:是的”可能是个坏主意。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21598640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档