Ubuntu 换源后仍然报错:404、没有 Release 文件

关键词:Ubuntu 21.10、换源、404 Not Found、没有 Release 文件

Ubuntu 执行 apt-get 命令后会报错,如果简单得更换为国内的源地址也无法解决,那可能和 Ubuntu 的系统版本有关,需要根据具体情况处理。

若移动端访问不佳,请使用 –> Github版

问题

Ubuntu 21.10 执行 apt-get update 后会报错:

 xx Release 404  Not Found [IP: xxx]
 E: 仓库 "xx Release" 没有 Release 文件。
 N: 无法安全地用该源进行更新,所以默认禁用该源。
 N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。

尝试更换源(/etc/apt/sources.list)之后,还是一样的错误。

由于使用的是 Ubuntu 21.10,在查询 Ubuntu 生命周期和发布节奏 后发现,Ubuntu 21.10 生命周期截止到 2022.07。(还有 Ubuntu 21.04,生命周期截止时间是 2022.01)

当前是 2022.10,已经超出生命结束周期(EOL)时间了。

解决方案

对于超出 EOL 的版本,有两种解决方案可以让 apt-get 恢复正常:

  1. 升级 Ubuntu 版本
  2. 将源 url 更换到旧的包存储库(old-releases)

说明:示例的命令是非 root 用户,如果是 root 用户,则不需要输命令前面的 sudo。例如

  • 非 root 用户:sudo apt-get update
  • 则 root 用户时:apt-get update

详细方案如下:

1. 升级系统版本

最简单的方法是将 Ubuntu 系统升级到最新版本:

 sudo apt-get dist-upgrade

这个方法风险比较大,尤其是我们当前的版本与最终要升级到的版本差的版本比较大的时候;另外,经过测试,升级系统的过程,会卸载重装一些软件,而软件重装后,软件安装过的三方包会丢失,需要重新安装。

例如 Python,升级完系统后,需要再次使用 pip 安装之前使用到的 package。

如果升级系统版本的方式暂时无法评估风险,可以考虑更换 sources url(Packages Url)的方式。

注意:如果遇到直接升级系统失败的情况,需要先使用方案2,更新好本地的源地址等信息之后,才能正常完成系统升级。

2. 更换为 old-releases 的源地址

Ubuntu 超出 EOL 的版本的源地址是 http://old-releases.ubuntu.com

  • 非 arm 架构的机器:需要用 old-releases.ubuntu.com 的地址替换掉所有的 archive.ubuntu.comsecurity.ubuntu.com 地址。
  • arm 架构的机器:需要用 old-releases.ubuntu.com/ubuntu 的地址替换掉所有的 ports.ubuntu.com/ubuntu-ports 地址。

先确认下源的配置情况:

 cat /etc/apt/sources.list

情况一:使用的是 archive.ubuntu.comsecurity.ubuntu.com 地址:

 # 使用 sed 命令,用 old-releases.ubuntu.com 替换掉所有的 archive.ubuntu.com 和 security.ubuntu.com
 sudo sed -i -e 's/archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
 # 再次检查是否已经全部替换
 cat /etc/apt/sources.list
 # 更新和同步源信息
 sudo apt-get update

情况二:使用的是 ports.ubuntu.com 地址:

 # 使用 sed 命令,用 old-releases.ubuntu.com/ubuntu 替换掉所有的 ports.ubuntu.com/ubuntu-ports
 sudo sed -i -e 's/ports.ubuntu.com/ubuntu-ports/old-releases.ubuntu.com/ubuntu/g' /etc/apt/sources.list
 # 再次检查是否已经全部替换
 cat /etc/apt/sources.list
 # 更新和同步源信息
 sudo apt-get update

现在,就能够在不受支持的旧 Ubuntu 版本上安装或更新软件包了。

注意:如果使用了国内的源地址,可以参考上述 2 个情况,对域名或者路径进行替换。

总结

网上很多文章,解决这类问题的时候,通常是换一个阿里云或者清华大学开源软件镜像地址,无法切实解决问题。

同样是换源地址,我们在了解到 Ubuntu 系统有 EOL 时间这一信息后,才能根据实际情况做出正确的修改。

如果有什么建议或者问题可以随时联系我,共同探讨学习:

这个错误是由于无法下载指定的软件包导致的。根据引用\[1\]中的错误信息,可以看到在访问 http://172.6.0.2/ubuntu/dists/jammy/main/binary-i386/Packages 时出现了 404 Not Found 的错误。同样的错误也出现在其他两个链接上。这意味着所请求的软件包在指定的地址上不存在。 根据引用\[2\]中的命令输出,可以看到在尝试安装 tree 软件包时,出现了类似的错误。错误信息中提到了 http://hk.archive.ubuntu.com/ubuntu/ 的链接无法访问,导致无法下载软件包。这可能是由于网络连接问题或者指定的镜像源不可用所致。 引用\[3\]中的错误信息也提到了无法加载共享库文件 libxapian.so.22,这可能是由于缺少该文件或者文件路径不正确导致的。 综上所述,无法下载 http://mirrors.aliyun.com/ubuntu/pool/main/d/dpkg/dpkg-dev_1.19.0.5ubuntu2.3_all.deb 的错误可能是由于网络连接问题、镜像源不可用或者文件路径错误导致的。建议您检查网络连接是否正常,尝试使用其他镜像源或者更新软件包列表后再次尝试下载。 #### 引用[.reference_title] - *1* [解决 Failed to fetch http://172.6.0.2/ubuntu/dists/jammy/main/binary-i386/Packages 404 Not Found问题](https://blog.csdn.net/qq_37497543/article/details/125680894)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [ubuntu12.04安装tree出现无法下载 ...i386](https://blog.csdn.net/wgl307293845/article/details/115367584)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【BUG解决】sudo apt-get update 报错 E: The repository ‘http://xxx Release‘ does not have a Release...](https://blog.csdn.net/suiqianjushi/article/details/123357558)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值