You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BitBucket Pipeline构建Dpkg报错:control目录权限777不符合要求

解决dpkg-deb权限错误:control目录权限777不符合要求

报错根源:你仅修改了外层process-mgmt-svc目录的权限,但deb包构建要求DEBIAN/control目录及其内部文件的权限必须处于755-775区间,当前这些文件/目录权限为777,不符合规范。

以下是两种可行的修改方案,调整BitBucket Pipeline脚本即可解决问题:

方案1:复制时不保留原权限,直接设置正确权限

修改脚本中的复制和权限配置步骤:

script:
  - apt-get update && apt-get install -y dpkg-dev  # 确保安装必要的dpkg工具
  - cd ..
  - mkdir process-mgmt-svc
  - cp -r build/. process-mgmt-svc  # 去掉-p参数,不保留原文件权限
  - chmod 755 process-mgmt-svc/DEBIAN  # 设置control所在目录权限
  - chmod 644 process-mgmt-svc/DEBIAN/control  # 若为可执行脚本则改用755
  - dpkg-deb --build process-mgmt-svc

方案2:递归修正DEBIAN目录下的所有权限

如果需要保留部分原文件权限,可通过find命令递归调整:

script:
  - apt-get update && apt-get install -y dpkg-dev
  - cd ..
  - mkdir process-mgmt-svc
  - cp -rp build/. process-mgmt-svc
  - # 递归设置DEBIAN下所有目录权限为755,文件权限为644
  - find process-mgmt-svc/DEBIAN -type d -exec chmod 755 {} \;
  - find process-mgmt-svc/DEBIAN -type f -exec chmod 644 {} \;
  - dpkg-deb --build process-mgmt-svc

说明:deb包的DEBIAN目录是核心配置区域,目录权限必须为755(允许所有者读写执行,其他用户读执行),普通配置文件一般设为644(所有者读写,其他用户读);若包含postinst/preinst等可执行脚本,可单独将其权限设为755。

内容的提问来源于stack exchange,提问作者Priyamal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 00:27:10