如何删除外部架构?

如何删除外部架构?

在 Ubuntu 12.04 LTS x64 上,我们想要删除它附带的 i386 外部架构,但我没有看到dpkg可以干净地执行此操作的命令。

使用 apt-get 时卡在 foreign-architecture=i386,建议用户直接删除该行/etc/dpkg/dpkg.cfg.d/multiarch,我可以这样做(甚至可以完全删除该文件),但我想知道是否有更“合适”的方法来做到这一点。

我们之所以要这样做,是因为我们维护了大量使用 Puppet 的持续集成代理,并且希望坚持使用“纯 64”。我们从自己维护的存储库安装自己的 Debian 软件包,除非我们提供软件包的 i386 版本,否则此操作会失败。我知道可以在特定存储库配置中覆盖体系结构,但完全禁用非 64 体系结构会更简洁。

答案1

删除体系结构的标准方法是通过 dpkg:

sudo dpkg --remove-architecture i386

在 Ubuntu 16.0.4 LTS 上测试。

它也比在 sources.list 中的每个 deb ... 之后添加架构更快、更简单。

答案2

看起来tumbleweed 的评论解决了你的问题。

您可以向 Apt 源定义添加一个选项来限制该源的体系结构:

deb [arch=amd64] ...

欲了解更多信息,请参阅社区 Wiki 页面多架构包管理

相关内容