Linux 中的“获取失败”错误

apt 命令行工具是 Debian 和基于 Ubuntu 的 Linux 发行版的关键组件之一。 它有助于可靠地检索和安装软件包,从而使用户可以轻松地安装软件及其依赖项。 这无疑是 Linux 的显着特征之一。

有时候,你可能会遇到烦人的 Failed to fetch 尝试使用时出错 apt 可能类似于以下内容的工具:

W: Failed to fetch https://in.archive.ubuntu.com/ubuntu/dists/precise/Release.gpg   Temporary failure resolving 'in.archive.ubuntu.com' 

在本教程中,我们将看看可能遇到此错误的可能原因及其解决方案。

有什么先决条件吗?

能够解决此问题没有主要的先决条件,但请记住,您需要 您设备的超级用户权限. 如果你是 不是 admin 或无权访问密码 的设备,您可能无法解决此问题。

apt-get 需要超级用户密码

排除了先决条件后,现在让我们看看可能发生此错误的可能原因。

原因1:您的互联网连接问题

作为 apt 命令从网络服务器获取包,毫无疑问,你必须有一个正确的互联网连接。

如果您不确定终端无法连接到互联网的原因, 通过以下步骤进行诊断.

诊断:运行 ping 工具

确定终端是否连接到 Internet 的最佳方法是尝试 ping 主机。 Enter 以下命令:

ping www.google.com 
检查终端是否能够成功连接到虚拟主机

如果你得到一个 来自主机的连续回复序列 如上图所示,这意味着您的互联网工作正常。 按 Ctrl+C 停止 ping 工具。

解决方案:修复互联网连接

以下其中一项可能会让您重新上线:

  • 寻找断开的以太网电缆。
  • WiFi/网络适配器可能已关闭,请尝试将其打开。
  • 查找网络设备中的故障。
  • 尝试联系 ISP。

原因 2:您可能连接到代理网络

如果您的设备连接到属于 组织 (如您的办公室、大学、图书馆等),您可能通过代理服务器连接到互联网。

您将需要 c配置代理设置以使 APT 正常工作. 请按照以下步骤操作:

解决方案 1:为 APT 配置代理设置

我们必须手动创建一个单独的配置文件,称为 proxy.conf 在 apt 配置文件夹中。

  1. Enter 终端中的以下代码:
sudo touch /etc/apt/apt.conf.d/proxy.conf 

出现提示时,输入密码。 此代码将创建所需的 代理.conf 文件在该位置 /etc/apt/apt.conf.d/proxy.conf.

2. 使用 Vi 编辑器,现在我们将编辑文本文件。 Enter 以下代码:

sudo vi /etc/apt/apt.conf.d/proxy.conf 
配置代理 Linux配置代理的命令

3.您将进入编辑模式,现在添加以下代码:

Acquire {   HTTP::proxy "https://<proxy-hostname>:<proxy-port>";   HTTPS::proxy "https://<proxy-hostname>:<proxy-port>"; } 

确保更换 <proxy-hostname> 使用您的代理服务器主机名和 <proxy-port> 与港口。 例如,如果您的代理主机名是 10.32.0.1 和端口是 8080,代码将如下所示:

Acquire {   HTTP::proxy "https://10.32.0.1:8080";   HTTPS::proxy "https://10.32.0.1:8080"; } 
设置代理终端用于设置 HTTP 和 HTTPS 代理的代码

4. Exit vi 编辑器通过输入保存更改 :wq!

5. 重新启动您的设备并检查您的问题是否已解决。

原因 3:您正在使用已达到其 EoL(生命终止)的版本

如果您使用的是旧版本或临时版本(如 Ubuntu 21.04),它可能已达到 生命的尽头 并且不再支持。 您需要升级到较新的版本才能正常使用 APT。

解决方案 1:将系统升级到最新版本

1.首先,您需要检索更新的包列表:

sudo apt-get update 

2. 现在,运行以下代码下载并安装所需的包:

sudo apt-get upgrade sudo apt-get dist-upgrade 

3. 您需要安装更新管理器:

 sudo apt-get install update-manager-core 

4. 重新启动您的设备,然后输入以下代码开始下载和升级您的发行版:

sudo do-release-upgrade 
升级分发Enter y 继续

现在系统将开始下载最新版本。 这可能需要几个小时,具体取决于下载大小和您的设备规格。

参考

Ubuntu 帮助和询问 Ubuntu:EOLUpgrades – 社区帮助 Wiki (ubuntu.com) | 从终端设置 apt 代理 – Ask Ubuntu

结论

除非完全了解 Linux 终端引发的异常背后的细节,否则解决此类问题可能会变得有些棘手。 尽管如此,我希望上述指南能够解决问题。