我们又回来讨论了 apt
相关的错误,这一次,我们谈论的是如下所示的错误消息:
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
您可能在尝试运行 apt update
或者 apt upgrade
命令。 这是 Linux 中比较有问题的错误之一,因为它 阻止用户 从更新某些程序甚至操作系统本身。 有时,错误伴随着另一条消息,如下所示:
W: Failed to fetch https://in.archive.ubuntu.com/ubuntu/dists/precise/Release.gpg
如果您也收到上述错误消息,我们建议您阅读本文。
此错误背后的原因
这个错误再次与 来源.list 文件中存在 等/apt/ 目录。 有 过时的资源 是发生此错误的主要原因。 此外,顾名思义,此错误发生在 您的操作系统应该从中更新的存储库被识别为不安全 并且可能对系统构成威胁。
如果您使用的是 EoL (End of Life) 版本(不再支持并被认为已过时的发行版),您还将收到前面提到的“获取失败”错误,因此您可以前往该文章找出你怎么能 从 EoL 发行版升级到当前的 LTS(长期支持)版本.
该错误的另一个重要案例是当您使用的存储库是 不信任 (通常来自第三方来源)由 Linux 提供。 因此,作为一种安全措施,它们被禁用。
如何解决问题?
方法一:绕过安全措施
如果您信任使用 apt 安装的软件,您实际上可以 旁路 认证安全措施并允许安装软件包而不会出现上述错误。
只需使用以下选项:
--allow-unauthenticated
例如,如果您想使用 apt 安装带有上述选项的 bc (Basic Calculator),您需要编写如下命令:
方法 2:使用标志添加未签名的存储库
如果您使用的是未签名的存储库,您可能会收到此错误,因为未签名的存储库通常会被标记为不安全。 要使用存储库,您需要在您的 sources.list
文件。 请按照以下步骤操作:
1. 打开 sources.list
文件使用文本编辑器,我将使用 vi 编辑器:
sudo vi /etc/apt/sources.list
2. 将以下选项添加到您正在使用的源中:
[trusted=yes]
例如,我设置了 trusted
选项 https://archive.ubuntu.com/ubuntu/ jammy main restricted
来源如下:
3. Save 然后使用 ESC 键退出 :wq!
(对于 vi 编辑器)。
4.运行一个 sudo apt-get update
命令,看看问题是否解决。
或者,您也可以尝试添加 [allow-insecure=yes]
选项。
方法 3:禁用引起问题的存储库
当你得到“Updating from such a repository can't be done securely
“,还提到了存储库源以及错误代码。 此存储库源是问题的原因,我们可以通过禁用该存储库来解决它。 为此,请按照以下步骤操作:
1. 打开 软件更新程序
2.根据 其他软件 选项卡,找到相关的存储库并取消选中它们
3. 关闭软件更新程序并运行以下命令:
sudo apt update
这应该可以解决安装/更新的问题。
参考
- 询问 Ubuntu——从未签名的存储库强制更新
- Youtube – 拉斐尔·维库纳
概括
与与 apt 实用程序相关的其他错误相比,修复此错误并不复杂。 这个错误是由一个非常具体的原因引起的,因此只有几种方法可以解决它,这些方法在大多数情况下都有效。 如果即使按照上述方法仍未解决错误,您可能需要找到其他方法来安装您可以在其源网站上找到的软件包。