WEB资源网

最新鲜的WEB程序员技术文档及相关资源 – Happy Life, Happy Coding!

在旧版本Ubuntu系统中使用“apt-get update”出现“404 Not Found”错误的解决办法

问题:我的电脑上安装的是旧版本的Ubuntu 13.04(Raring Ringtail)。当我运行sudo apt-get update命令的时候,抛出了“404 Not Found”错误,并且我不能通过 apt-get or aptitude来更新包。由于这个错误,我甚至不能更新到最新发布版本的系统。我该如何解决这个问题呢?

 

每一个Ubuntu发布版本都有它的结束时间,通常,Ubuntu发布版本支持18个月,而LTS (Long Term Support)(长期支持)版本分别支持3年(服务器版)和5年(桌面版)。当一个Ubuntu发布版本到达结束期后,它的库将不再能够访问,并且你也不会得到任何维护更新和安全补丁。当写这个的时候,13.04版本已经到底了它的结束期。

如果你使用的是Ubuntu系统到达结束期了,你使用 apt-get or aptitude更新库时会得到以下错误提示:

W: Failed to fetch http://us.archive.ubuntu.com/ubuntu/dists/raring-backports/multiverse/binary-i386/Packages  404  Not Found [IP: 91.189.91.13 80]

W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/raring/main/binary-amd64/Packages  404  Not Found

W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/raring-security/universe/binary-i386/Packages  404  Not Found [IP: 91.189.88.149 80]

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

对于那些使用旧版本的Ubuntu的用户,Canonical会维护 old-releases.ubuntu.com ,这是一个过期库的归档。因此,当Canonical支持的Ubuntu过期后,你必须把源切换到 old-releases.ubuntu.com(除非你想在过期前进行升级)。

下面的方法通过切换到旧版本的源来解决“404 Not Found”错误。

首先,使用旧版本的源来替换当前主源

$ sudo sed -i -r 's/([a-z]{2}\.)?archive.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
$ sudo sed -i -r 's/security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

然后使用文本编辑器打开 /etc/apt/sources.list ,找到 extras.ubuntu.com,这个库也不再支持13.04。所以你需要使用 “#” 号注释掉 extras.ubuntu.com。

#deb http://extras.ubuntu.com/ubuntu raring main
#deb-src http://extras.ubuntu.com/ubuntu raring main

现在,你应该能够在旧版本的Ubuntu系统上进行安装或者更新了。

作者
主站点:http://9iphp.com/ 个人简介:http://me.9iphp.com