构建预配置的 debian 包

2024-04-01

我正在尝试构建一个 debian 软件包,它会自动配置我的所有计算机以使用相同的配置文件和设置。

例如,我尝试设置诸如 alter /etc/default/hostapd.conf 之类的内容。我目前正在通过使用 dh_install 将文件复制到 /etc/default/hostapd 来执行此操作,并使用我希望它具有的配置。

这会导致错误:

trying to overwrite '/etc/default/hostapd', which is also in package hostapd

创建覆盖 /etc/default/hostapd 等设置的 debian 软件包的正确方法是什么?


错误的原因是任何向系统写入文件的包都被标记为其所有者。 deb 机制不喜欢两个包拥有同一个文件。

最好的选择是使用 dpkg-divert 将其他包的文件重命名为不同的名称。在您的预安装脚本中,输入以下命令(假设您的包名为 my_package


dpkg-divert --divert /etc/default/hostapd.saved.my_package --package my_package --rename --add /etc/default/hostapd  

在 postrm 脚本中,您需要输入相反的命令(未经测试,RTFM 才能正确获得精确的语法):


dpkg-divert --divert /etc/default/hostapd.saved.my_package --package my_package --rename --remove /etc/default/hostapd  

至少在过去,有一个更简单(尽管不太安全)的选项可以将“conffile”字段放入 debian 控制文件中。这告诉系统此软件包安装的文件会覆盖另一个软件包的文件。然而,我不确定我是否会推荐这种方法,因为卸载时它可能会破坏东西。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

构建预配置的 debian 包 的相关文章

随机推荐

  • 结构体上溢出的整数加法[重复]

    这个问题在这里已经有答案了 有的是ULARGE INTEGER 联合 https msdn microsoft com en us library windows desktop aa383742 v vs 85 aspx对于不支持 64
  • 使用 AJAX 时页面不断刷新

    我正在创建一个包含表单的模式框 使用 ajax 和 php 提交后 表单将返回输入 然后模式框应该消失 问题是 结果在框消失和页面刷新之前显示了几秒钟
  • flutter中如何在某个时间执行一个方法?

    如何在固定时间执行一个方法 比如我想在下午 2 30 运行一个方法 我了解计时器功能 但是运行计时器功能这么长时间是个好主意吗 同样 该方法在一天内会被调用多次 Edited 我努力了android alarm manager https
  • R data.table 加速 SI/公制转换

    情况是这样的 我有一个 8500 万行 18 列的表 其中三列的值采用公制前缀 SI 表示法 请参阅公制前缀 http en wikipedia org wiki Metric prefix维基百科上 这意味着我有这样的号码 1M 而不是
  • 访问 <#list> 中对象的属性

    Solution 我之前曾尝试向 LineItem 类添加访问器 例如 public String getItemNo return itemNo 并将 FTL 从 lineItem itemNo to lineItem getItemNo
  • PushStreamContent 流在负载下不会刷新

    我正在使用 PushStreamContent 来保持与每个客户端的持久连接 每 20 秒向每个客户端流推送短心跳消息对于 100 个客户端来说效果很好 但在大约 200 个客户端时 客户端首先开始延迟几秒钟接收 然后根本不显示 我的控制器
  • HighCharts图像导出

    我在我的应用程序中使用 HighChart 我想通过单击按钮导出图表图像http jsfiddle net hfrntt fXHB5 1896 http jsfiddle net hfrntt fXHB5 1896 但我想将图像保存在预定义
  • 无法从 Scrapy 脚本访问 request.response.meta['redirect_urls']

    我无法访问request response meta redirect urls 来自我的 Scrapy 脚本 但在 Scrapy shell 中访问同一网页的此信息没有问题 当我打印钥匙时request response meta我只看到
  • 如何使用 Firebase Cloud Messaging 自动增加 iOS 通知徽章?

    如何使用 Firebase Cloud Messaging 自动增加 iOS 通知徽章 是否可以做类似的事情 1 or 您可以在 通知负载 https firebase google com docs cloud messaging htt
  • Onclick 或 href 最适合在按钮中打开链接

    这是最好的方法 使用按钮打开链接
  • 使用 webdriver python 的触摸事件示例?

    我见过大约100个Java Webdriver 的触摸事件示例 http android developers blogspot com 2011 10 introducing android webdriver html在线 但没有一个P
  • 删除 pandas 数据框中的所有特殊字符

    我无法从 pandas 数据框中删除所有特殊字符 你能帮我吗 我尝试过这样的事情 df df replace r W regex True 因为我在最近的一篇文章中发现了它 但是当我执行时 特殊字符 不会消失 我知道在 PostgresQL
  • Firebase 删除不应该的值

    我正在使用 firebase 编写 Android 应用程序 我有一个部分 用户发送取件请求 该请求显示在司机的请求片段中 为了处理接受 拒绝 我已经设置了它 因此当您单击 接受 时 它会创建另一个包含已接受请求的 Firebase 子项
  • express - Angular2错误:ENOENT:刷新时没有这样的文件或目录

    我有一个公共文件夹 其中放置了 angular2 应用程序 现在我正在尝试设置一个带有始终返回index html 的包罗万象的路由的快速服务器 需要明确的是 根据这个问题 https stackoverflow com questions
  • OCaml 数据类型定义中的方括号“[”和“]”是什么意思?

    I saw 下列 https coq github io doc v8 11 api coq Genarg index html type rlevel type rlevel rlevel 但我以前从未见过这种情况 并且 ADT 代数数据
  • 是否有最近键映射数据结构?

    我遇到一种情况 我需要找到与我请求的键最接近的值 它有点像定义键之间距离的最近地图 例如 如果我在映射中有键 A C M Z 则对 D 的请求将返回 C 的值 任何想法 大多数树数据结构使用某种排序算法来存储和查找键 许多这样的实现可以找到
  • Lollipop中导航栏的默认Alpha值

    如果你设置android windowTranslucentNavigation to true在 Lollipop 主题中 导航栏不会像 KitKat 那样完全半透明 相反 它是一个黑暗的半透明背景 这里有人知道该背景的 alpha 值是
  • Spring WS:如何将拦截器应用到特定端点

    我在 Spring 应用程序上有多个工作 SOAP Web 服务 使用 httpBasic 身份验证 并且我需要在其中之一上使用 WS Security 以允许使用以下 Soap 标头进行身份验证
  • 使用 CSS 排列元素时遇到问题

    我有一个包含链接的无序列表 有些链接是文本 有些是带有图标的文本 但我有一个问题 就是我无法让他们排队 有人可以建议我在这里做错了什么吗 我尝试了不同的组合 但仍然无法让事情排列起来 这是我的 HTML 代码 请注意 我使用了另一个网站的图
  • 构建预配置的 debian 包

    我正在尝试构建一个 debian 软件包 它会自动配置我的所有计算机以使用相同的配置文件和设置 例如 我尝试设置诸如 alter etc default hostapd conf 之类的内容 我目前正在通过使用 dh install 将文件