如何从缺少某些架构的存储库安装软件包?

如何从缺少某些架构的存储库安装软件包?

我尝试在 Debian Jessie(i386 架构)上安装syncthing,如下这些步骤

curl -s https://syncthing.net/release-key.txt | sudo apt-key add -
echo "deb http://apt.syncthing.net/ syncthing release" | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt-get update

此时,apt-get失败并显示以下消息:

W:获取失败http://apt.syncthing.net/dists/syncthing/InRelease 无法在发布文件中找到预期的条目“release/binary-arm64/Packages”(错误的sources.list条目或格式错误的文件)

现在,我确实有arm64一个外国架构,并且syncthing似乎缺少它的软件包。这应该不是问题,因为我只想在我的主机架构上安装syncthing i386

如何在不删除arm64外部架构的情况下继续安装?

答案1

您可以通过修改源条目(添加 [arch=architecture] 或在安装过程中(apt-get install package:architecture)来指定 apt 使用的架构。更多信息请参考多架构/HOWTO - Debian Wiki

由于您在 apt update 阶段遇到问题,最好尝试将 /etc/apt/sources.list 中的同步条目修改为以下内容:

deb [arch=i386] http://apt.syncthing.net/ syncthing release

然后,重试更新。

相关内容