【问题标题】:Override files from dependent deb package覆盖依赖 deb 包中的文件
【发布时间】:2015-11-18 11:09:57
【问题描述】:

我尝试构建一个deb 包,为 SSH 提供特定的配置文件(即/etc/ssh/ssh_config)。我还想将我的包依赖于上游openssh-client包,以实现openssh-client的安装和调用apt-get install my-ssh-package时如果我的特定配置文件的“on-top”安装。

我使用 fpm/fpm-cookery 来构建我的 deb 包。这可行,但是当我使用 dpkg 进行本地测试时,我收到该错误:

$ dpkg -i pkg/my-ssh-package_0.1.0-1_all.deb 
Selecting previously unselected package my-ssh-package.
(Reading database ... 18814 files and directories currently installed.)
Preparing to unpack .../my-ssh-package_0.1.0-1_all.deb ...
Unpacking my-ssh-package (0.1.0-1) ...
dpkg: error processing archive pkg/my-ssh-package_0.1.0-1_all.deb (--install):
 trying to overwrite '/etc/ssh/ssh_config', which is also in package openssh-client 1:6.6p1-2ubuntu2.3
Errors were encountered while processing:
 pkg/my-ssh-package_0.1.0-1_all.deb

如何强制我的包覆盖来自上游openssh-client 包的/etc/ssh/ssh_config

【问题讨论】:

    标签: ubuntu dependencies deb


    【解决方案1】:
    1. 让你的包在 /tmp 中安装你的新 /etc/ssh/ssh_config
    2. 在你的包中添加一个 postinst 文件,将文件从 /tmp 复制到 /etc/ssh

    【讨论】:

      猜你喜欢
      • 2018-11-01
      • 2015-11-21
      • 2011-12-26
      • 1970-01-01
      • 2014-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多