![什么是 404 错误](https://linux22.com/image/806579/%E4%BB%80%E4%B9%88%E6%98%AF%20404%20%E9%94%99%E8%AF%AF.png)
最近,我在旧机器上安装了旧版本的 Ubuntu。每当我尝试安装任何软件时,都会收到错误消息,提示无法找到该软件:
$ sudo apt-get install vlc
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package vlc
答案1
不受支持的旧版本(如 11.04、11.10 和 13.04)的存储库将移至存档服务器。http://old-releases.ubuntu.com。
原因是它现在不再受支持并且不再接收更新和安全补丁。
我建议您考虑一个受支持的发行版。如果您的计算机在内存或处理器方面太旧,那么您应该考虑使用 Lubuntu 或 Xubuntu 等发行版。
如果您想继续使用过时的版本,请编辑/etc/apt/sources.list
并更改archive.ubuntu.com
为。security.ubuntu.com
old-releases.ubuntu.com
您可以使用以下方式执行此操作sed
:
sudo sed -i -re 's/([a-z]{2}\.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
然后更新:
sudo apt-get update && sudo apt-get dist-upgrade
有时,创建系统备份并使用支持的版本重新安装可能会更快。
来源:如果 Ubuntu 9.04 已经过时,我还能继续使用吗?
要升级到新版本:
完成上述步骤后,切换到旧版本镜像,更新更新管理器,然后执行以下操作do-release-upgrade
:
sudo apt-get update
sudo apt-get install ubuntu-release-upgrader-core
sudo do-release-upgrade
也可以看看EOL升级 - 社区帮助 Wiki。
答案2
什么是 404 错误
404 或 Not Found 错误消息是 HTTP 标准响应代码,表示客户端能够与服务器通信,但服务器找不到所请求的内容。
当用户尝试点击损坏或无效的链接时,网站托管服务器通常会生成“404 - 未找到页面”网页。
为什么我们会遇到 404 错误
Ubuntu 遵循两种不同的方法发布周期:
常规 Ubuntu 版本获得 9 个月的支持。LTS 版本获得 5 年的支持。
过去的版本可能有不同的支持时间表(例如,正常版本(13.04 之前)过去支持 18 个月,而 LTS 版本(12.04 之前)过去在桌面上支持 3 年,在服务器上支持 5 年)。
停产:一旦特定版本的支持期结束;他们被称为使用寿命终止 (EOL)并且该版本的所有更新和软件包存储库都转移到了不同的服务器,导致运行时出现 404 错误sudo apt-get update
。您可以通过以下方式确认您的版本是否已达到 EOL 状态:这一页。如果您的 Ubuntu 版本在“生命终结 (EOL)”表中提及,则该版本不再受支持,您应该尝试升级到较新的支持版本。但是,如果您希望继续使用这个不受支持的版本,您必须进行必要的修改以/etc/apt/sources.list
指向old-releases
Ubuntu 的服务器。
进行必要修改的步骤
打开你的终端:
- 按Ctrl+ Alt+ T; 或
- 如果您有 Gnome:
Applications
→Accessories
→Terminal
; 或者 - 如果您有 Unity:按(和Super之间的键)并查询。Left CtrlLeft Alt
Terminal
运行以下命令进入root shell:
sudo -i
输入你的用户密码,然后按Enter。提示符会改变,并表明 root 用户现在已登录。在这里运行以下命令:
gedit /etc/apt/sources.list
该文件将在新的 Gedit 窗口中打开。找到第一行没有从 开始
#
。假设您正在运行 Karmic Koala (Ubuntu 9.10):它应该像下面这样:deb <siteurl> karmic main restricted
其中,
<siteurl>
是您的首选服务器 -http://gb.archive.ubuntu.com/ubuntu
在您的情况下(例如)。按Ctrl+H将您的替换
<siteurl>
为http://old-releases.ubuntu.com/ubuntu
。- 搜索:
http://gb.archive.ubuntu.com/ubuntu
即;<siteurl>
- 替换为:
http://old-releases.ubuntu.com/ubuntu
和 - 按Replace All
- 搜索:
再次:
- 搜索:(
http://security.ubuntu.com/ubuntu
此 URL 适用于所有 Ubuntu 版本 — 无论您当前使用的服务器是什么) - 用。。。来代替:
http://old-releases.ubuntu.com/ubuntu
- 按Replace All
- 搜索:(
保存文件并退出 Gedit。
运行以下命令退出 root shell:
logout
您会发现提示符切换回来,表明您的普通用户现在已登录。然后运行以下命令:
sudo apt-get update
好了。这次没有 404 错误。您现在可以安装适用于您的 Ubuntu 版本的所有可用软件包。您还可以运行sudo apt-get dist-upgrade
以安装尚未安装的任何安全/错误修复更新,但您不会从 Ubuntu 获得任何进一步的安全/错误修复更新。
答案3
简短的回答是将下一个 apt 存储库添加到第三方软件(或者其他软件 在较新的版本中)软件源(或者软件与更新在较新版本中):
deb http://old-releases.ubuntu.com/ubuntu code_name main restricted universe multiverse
长答案...
GUI 方法
嗯,实际上我们不使用任何终端一次也没有。只是 GUI,我保证 ;-)
首先,打开软件源(或者软件与更新在较新版本中)。无论您的 Ubuntu 有多旧,肯定有类似的东西。对于 Ubuntu 9.04 (Jaunty Jackalope),请查看下图以了解它的位置:
后软件源(或者软件与更新)打开,进去Ubuntu 软件和更新选项卡并取消选择所有内容,如下图所示。你不再需要这些东西,因为你的 Ubuntu 版本是生命尽头:
无需关闭软件源(或者软件与更新), 进去第三方软件(对于最新版本,此选项卡名为其他软件) 选项卡并添加新的 apt 存储库。当系统询问您时,请准确插入下一行:
deb http://old-releases.ubuntu.com/ubuntu jaunty main restricted universe multiverse
如果您的 Ubuntu 版本不是 9.04,请将上行内容替换jaunty
为您的 Ubuntu 代号(例如,如果您有 Ubuntu 9.10,请将其替换为karmic
等等):
现在,当你要关闭的时候软件源(或者软件与更新),系统会要求您重新加载有关可用软件的信息。请确保您的互联网连接可用:
现在,您可以自由下载几乎任何您想要的东西。对于 9.04,您可以使用Synaptic 软件包管理器。对于最新版本,有Ubuntu 软件中心。
例如,要使用 Synaptic 包管理器在 Ubuntu 9.04 中安装 VLC,请按照下图中的说明进行操作:
如果你想将你的 Ubuntu 更新到新版本,只需转到系统>更新管理器:
我在 Ubuntu 9.04(Jaunty Jackalope)的实时会话中测试了此方法,从这些图片中可以看出,它有效。如果您处于已安装的 Ubuntu 会话中,有时会要求您输入 root 或管理员密码。当系统询问您时,只需输入您的个人用户密码即可。
答案4
要apt-get
重新开始工作,请将您的软件源更改为旧的版本存储库。
sudo nano /etc/apt/sources.list
删除其中的所有内容,然后粘贴以下内容:
# Required
deb http://old-releases.ubuntu.com/ubuntu/ karmic main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ karmic-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ karmic-security main restricted universe multiverse
# Optional
#deb http://old-releases.ubuntu.com/ubuntu/ karmic-backports main restricted universe multiverse
就这样。