当我运行:apt-get update 我收到以下错误:
Err http://us.archive.ubuntu.com trusty/main
armhf 软件包 404 未找到 [IP: 91.189.91.13 80] Err http://us.archive.ubuntu.com trusty/universe
armhf 软件包 404 未找到 [IP: 91.189.91.13 80] Err http://us.archive.ubuntu.com trusty-updates/main
armhf 软件包 404 未找到 [IP: 91.189.91.13 80] Err http://us.archive.ubuntu.com trusty-updates/universe
armhf 软件包 404 未找到 [IP: 91.189.91.13 80]
Ign http://us.archive.ubuntu.com
trusty/main 翻译-en_US
Ign http://us.archive.ubuntu.com
trusty/universe 翻译-en_US
W:无法获取http://us.archive.ubuntu.com/ubuntu/dists/trusty/main/binary-armhf/Packages
404 未找到 [IP:91.189.91.13 80]
W:无法获取http://us.archive.ubuntu.com/ubuntu/dists/trusty/universe/binary-armhf/Packages
404 未找到 [IP:91.189.91.13 80]
W:无法获取http://us.archive.ubuntu.com/ubuntu/dists/trusty-updates/main/binary-armhf/Packages
404 未找到 [IP:91.189.91.13 80]
W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/trusty-updates/universe/binary-armhf/Packages
404 未找到 [IP: 91.189.91.13 80]
E:部分索引文件下载失败。它们已被忽略或使用旧文件代替。
我清除了 /etc/apt/sources.list 和 /etc/apt/sources.list.d 并恢复到可信赖的主存储库,例如 cat /etc/apt/sources.list 的输出很简单:
###### Ubuntu 主存储库 deb http://us.archive.ubuntu.com/ubuntu/
trusty main universe deb-src http://us.archive.ubuntu.com/ubuntu/
trusty main universe
###### Ubuntu 更新存储库 deb http://us.archive.ubuntu.com/ubuntu/
trusty-updates 主宇宙 deb-src http://us.archive.ubuntu.com/ubuntu/
trusty-updates 主宇宙
是什么触发包管理器查找 binary-armhf 目录以及如何在更新包时停止这些错误?
为什么我的发行版会搜索 binary-armhf 目录?我有一台英特尔 i7,我不相信它使用 arm 指令集,它不是有自己的 x86_64 吗(我可能错了,我不太了解 CPU 架构)?
如果有帮助的话,我的核心之一的 cat /proc/cpuinfo 的输出是:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 44 model name : Intel(R) Core(TM) i7 CPU X 990 @ 3.47GHz stepping : 2 microcode : 0x13 cpu MHz : 1600.000 cache size : 12288 KB physical id : 0 siblings : 12 core id : 0 cpu cores : 6 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt aes lahf_lm ida arat epb dtherm tpr_shadow vnmi flexpriority ept vpid bogomips : 6941.82 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management:
谢谢您的任何指导,我已经为此奋斗了一段时间了。
答案1
您可能已经安装了(例如)armhf 交叉工具(编译器、链接器等),这些工具会添加armhf
为外部架构。您可以通过运行以下命令来验证这一点:
dpkg --print-foreign-architectures
您可以通过运行以下命令删除外部架构:
sudo dpkg --force-architecture --remove-architecture armhf
armhf
对我来说,作为外部架构添加的包是cuda-cross-armhf-6-5
。
答案2
我终于找到答案了!
apt-get update 使用 binary-x64 而不是 binary-amd64 并失败
我仍然不清楚如何以及为何为包管理器填充外部架构,但删除 armhf 条目会停止在可信存储库中搜索不存在的目录。