场景:
在下载libapriltag-dev依赖时,Linux给报了一个错误:E: Unable to locate package libapriltag-dev
。这个错误经常会出现,无法在现有的软件源里找到该安装包或者该依赖,这个时候,首先我们就需要先检查依赖名(安装包名)是否正确。如果无误,再去更新软件源。如果想要全部替换软件源,就参考之前写的E: Unable to locate package xxxx 的一种解决办法。我在前面那篇文章全部替换成Ubuntu18.04的中科大软件源。我在前面那篇文章全部替换成Ubuntu18.04的软件源后,仍然无法找到libapriltag-dev
依赖,所以就在 /etc/apt/sources.list
后面又添加了几个软件源,如下:
但是添加完执行sudo apt update
更新软件源时,就出现了这个报错:Certificate verification failed: The certificate is NOT trusted.
。
解决办法:
这个错误是因为使用的清华软件源中的证书过期了。可以尝试以下几种解决方法:
- 更换软件源:尝试更换为可信任的软件源。可以在系统设置或软件源配置文件中更改软件源,选择其他正常运行且提供有效证书的源。
- 更新证书:在终端中输入以下命令来更新证书存储库:
sudo apt-get install --reinstall ca-certificates
。
执行完后将重新安装ca-certificates软件包并更新证书。 - 手动设置信任:如果你知道该软件源是可信的,也可以手动配置系统信任该过期证书。请注意,这可能存在一定的风险,因为过期的证书可能不再安全。在终端中运行以下命令:
sudo mkdir /usr/share/ca-certificates/extra
sudo cp /path/to/your/certificate.crt /usr/share/ca-certificates/extra/
sudo dpkg-reconfigure ca-certificates
将/path/to/your/certificate.crt
替换为你下载的该软件源的证书路径。然后按照提示选择要信任的证书,并更新证书存储库。
我是试了第二种办法就成功解决了证书过期的问题。