apt-get update 不断出现错误

Dan*_* W. 5 updates apt

最近每当我跑步

sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

它在“读取数据库”步骤后给了我以下错误

W: Duplicate sources.list entry http://archive.canonical.com/ubuntu/ precise/partner amd64 Packages (/var/lib/apt/lists/archive.canonical.com_ubuntu_dists_precise_partner_binary-amd64_Packages)
W: Duplicate sources.list entry http://archive.canonical.com/ubuntu/ precise/partner i386 Packages (/var/lib/apt/lists/archive.canonical.com_ubuntu_dists_precise_partner_binary-i386_Packages)
W: You may want to run apt-get update to correct these problems
Run Code Online (Sandbox Code Playgroud)

好吧,我一遍又一遍地运行 apt-get update ,但没​​有任何改变。我也尝试了选项

sudo apt-get update --fix-missing
Run Code Online (Sandbox Code Playgroud)

sudo apt-get update -f
Run Code Online (Sandbox Code Playgroud)

这与我所知道的完全相同,但似乎没有任何帮助。

小智 6

您似乎同时启用了 32 位和 64 位存储库,因此您有两个不兼容的源可用。要了解您的系统架构是 32 位还是 64 位,请在终端中输入

uname -i 
Run Code Online (Sandbox Code Playgroud)

如果您运行的是 32 位系统,则输出将包含:

 i386 
Run Code Online (Sandbox Code Playgroud)

因此,对于 32 位系统,请sources.list使用 gedit打开文件:

gksudo gedit /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

并完全删除包含amd64 Packages.

显然,对于 64 位系统,删除包含i386 packages.

编辑sources.list、保存并关闭 gedit 后,输入以下命令:

sudo apt-get update  
sudo apt-get -f install
Run Code Online (Sandbox Code Playgroud)

  • @Dennis `/etc/apt/sources.list.d/` 中可能还有其他导致问题的列表文件。 (2认同)