如何摆脱 apt 中的 arm64

Mon*_*all 14 apt nvidia 16.04

W: Invalid 'Date' entry in Release file /var/lib/apt/lists/_var_cuda-repo-8-0-local_Release
N: Skipping acquire of configured file 'non-free/binary-arm64/Packages' as repository 'http://repository.spotify.com stable InRelease' doesn't support architecture 'arm64'
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-updates/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-backports/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-security/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.
Run Code Online (Sandbox Code Playgroud)

在我为 Jetson tx1 安装 Jetpack 后,我的 ubuntu 不断尝试获取 arm 更新。有没有办法禁用它?

编辑:

$dpkg --print-architecture
amd64

$dpkg --print-foreign-architectures
i386
arm64
Run Code Online (Sandbox Code Playgroud)

我看到arm64包含在外国架构中。如何删除它?

Byt*_*der 16

您可以通过运行删除外部架构

sudo dpkg --remove-architecture arm64
Run Code Online (Sandbox Code Playgroud)

之后,您需要更新软件列表。

sudo apt update
Run Code Online (Sandbox Code Playgroud)

如果您仍然收到一些错误或警告,您可以尝试删除所有软件列表并从服务器完全重新下载它们,以确保没有旧的东西。请注意,完整下载将比平时花费更长的时间:

sudo rm -rf /var/lib/apt/lists
sudo apt update
Run Code Online (Sandbox Code Playgroud)

  • 有没有办法从数据库中删除arm64,我也遇到了同样的问题。*编辑* `sudo dpkg --force-architecture --remove-architecture arm64` 和 `sudo rm -rf /var/lib/apt/lists` 以及 `sudo apt update` 修复了它。 (3认同)

小智 7

使用 jetson-tx2 arm64 时遇到同样的问题。本手册参考了高级设置场景中的解决方案,结果证明不删除包就无法删除架构。

这在添加了外部架构时很有用,导致在更新存储库元数据时出现“404 Not Found”错误。例如,如果您想将存储库限制为仅限 amd64 和 i386 架构,则如下所示:

deb [arch=amd64,i386] <url>
Run Code Online (Sandbox Code Playgroud)

为“sudo gedit /etc/apt/sources.list”中的所有存储库提供上述选项

现在“sudo apt update”,它将仅从 amd64 和 i386 获取。