Debian 上的基本软件包和多种架构

Debian 上的基本软件包和多种架构

我有一个运行 64 位内核的操作系统,但由于机器内存有限,我想使用大多数软件包的 32 位版本。我需要保留一些 64 位驱动程序,因为没有 32 位替代品。

我从完整的 64 位系统进行了转换,但 aptitude 抱怨基本包已损坏。可能已请求 32 位交叉升级但无法完全完成。如何保留已经使用的包?

例如,bash被请求(隐含 i386)并bash:amd64已安装,可以工作,但 aptitude 认为它已损坏,而dpkg -l看起来还不错。

dpkg -l | grep bash   
ii  bash:amd64           4.4-5                  amd64

我是否应该将架构改回amd64并安装i386非必需版本?

答案1

系统的主要架构是dpkg包的架构。这也是新安装的软件包的默认架构,我猜这就是您感兴趣的。

正如您所发现的,apt最终以所有基本包都必须与主架构相匹配的方式解决依赖关系。

要解决这种情况,同时保留i386作为您的主要架构,您必须手动安装所有i386必需的软件包。您可以apt通过切换回amd64临时状态来帮助您;然后aptitude search '~i~E'将列出所有必需的软件包,您可以操纵它来下载所有软件包。如果您已经i386安装了一些必要的软件包,这可能不起作用,您必须手动下载所有内容...

相关内容