使用`apt-get update`时Chrome的"错误来源.列表条目或格式错误的文件"

kro*_*cks 15 google-chrome ubuntu-14.04

我正在尝试使用

sudo apt-get update
但我得到错误,因为,

W: Failed to fetch http://dl.google.com/linux/chrome/deb/dists/stable/Release  Unable to find expected entry 'main/binary-i386/Packages' in Release file (Wrong sources.list entry or malformed file)

E: Some index files failed to download. They have been ignored, or old ones used instead. 

我厌倦了https://askubuntu.com/questions/120621/how-to-fix-duplicate-sources-list-entry中给出的解决方案,但再次显示相同的错误.建议我一些事情.

Dav*_*cum 25

看起来Google已停止支持i386,这就是为什么现在出现此错误的原因.看起来他们没有优雅地为他们的deb安装配置apt.要修复此问题,请执行以下操作

sudo sed -i -e 's/deb http/deb [arch=amd64] http/' "/etc/apt/sources.list.d/google-chrome.list"
Run Code Online (Sandbox Code Playgroud)

资料来源:https://www.reddit.com/r/chrome/comments/48oje6/linux_how_to_fix_failed_to_fetch/

编辑:正如其他人所指出的那样,需要另一个命令来阻止此修复程序恢复.由于这是接受的答案,我觉得它应该是这个答案的一部分.

sudo sed -i -e 's/deb http/deb [arch=amd64] http/' "/opt/google/chrome/cron/google-chrome"
Run Code Online (Sandbox Code Playgroud)


0xA*_*iHn 6

此外,如果在/etc/apt/sources.list.d目录中有两个名为google.listgoogle-chrome.list文件,并且类似的条目如下,则可能存在此问题:

在google.list中:

  deb http://dl.google.com/linux/chrome/deb/ stable main
Run Code Online (Sandbox Code Playgroud)

在google-chrome.list中:

  deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main
Run Code Online (Sandbox Code Playgroud)

然后,您应该删除google.list文件或取消注释其条目,如下所示:

  #deb http://dl.google.com/linux/chrome/deb/ stable main
Run Code Online (Sandbox Code Playgroud)