Ubuntu中apt更新时报错The certificate issuer is unknown的解决办法

Ubuntu 22.04更新apt出现The certificate issuer is unknown的解决办法

问题描述

使用docker安装Ubuntu22.04,官网给出的镜像只是一个裸系统,预装软件很少。换阿里源以后,apt update,出现如下报错:

shell 复制代码
# apt update
Ign:1 https://mirrors.aliyun.com/ubuntu-ports jammy InRelease
Ign:2 https://mirrors.aliyun.com/ubuntu-ports jammy-security InRelease
Ign:3 https://mirrors.aliyun.com/ubuntu-ports jammy-updates InRelease
Ign:4 https://mirrors.aliyun.com/ubuntu-ports jammy-backports InRelease
Ign:1 https://mirrors.aliyun.com/ubuntu-ports jammy InRelease
Ign:2 https://mirrors.aliyun.com/ubuntu-ports jammy-security InRelease
Ign:3 https://mirrors.aliyun.com/ubuntu-ports jammy-updates InRelease
Ign:4 https://mirrors.aliyun.com/ubuntu-ports jammy-backports InRelease
Ign:1 https://mirrors.aliyun.com/ubuntu-ports jammy InRelease
Ign:2 https://mirrors.aliyun.com/ubuntu-ports jammy-security InRelease
Ign:3 https://mirrors.aliyun.com/ubuntu-ports jammy-updates InRelease
Ign:4 https://mirrors.aliyun.com/ubuntu-ports jammy-backports InRelease
Err:1 https://mirrors.aliyun.com/ubuntu-ports jammy InRelease
  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.76 443]
Err:2 https://mirrors.aliyun.com/ubuntu-ports jammy-security InRelease
  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.77 443]
Err:3 https://mirrors.aliyun.com/ubuntu-ports jammy-updates InRelease
  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.76 443]
Err:4 https://mirrors.aliyun.com/ubuntu-ports jammy-backports InRelease
  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.77 443]
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-security/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-updates/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-backports/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-security/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-updates/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-backports/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-security/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-updates/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-backports/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-security/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-updates/InRelease: No system certificates available. Try installing ca-certificates.
W: https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-backports/InRelease: No system certificates available. Try installing ca-certificates.
W: Failed to fetch https://mirrors.aliyun.com/ubuntu-ports/dists/jammy/InRelease  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.76 443]
W: Failed to fetch https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-security/InRelease  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.77 443]
W: Failed to fetch https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-updates/InRelease  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.76 443]
W: Failed to fetch https://mirrors.aliyun.com/ubuntu-ports/dists/jammy-backports/InRelease  Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown.  Could not handshake: Error in the certificate verification. [IP: 222.192.186.77 443]
W: Some index files failed to download. They have been ignored, or old ones used instead.

重点出在了The certificate issuer is unknown. 上,这个错误通常表示 SSL/TLS 证书的颁发机构未知或无法验证。网上给出的方法有很多,但是或多或少都要用到一些需要安装的工具,而裸系统上都没有。

解决办法

  1. httpshttp。以阿里云镜像为例,直接将以下脚本拷贝到终端运行,将apt配置写入/etc/apt/sources.list
sh 复制代码
# 清空当前 sources.list
bash -c 'echo "" > /etc/apt/sources.list'

# 写入新的源列表
tee /etc/apt/sources.list <<EOF
deb http://mirrors.aliyun.com/ubuntu-ports/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu-ports/ jammy main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu-ports/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu-ports/ jammy-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu-ports/ jammy-updates main restricted universe multiverse

# deb http://mirrors.aliyun.com/ubuntu-ports/ jammy-proposed main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu-ports/ jammy-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu-ports/ jammy-backports main restricted universe multiverse
EOF
  1. 运行apt update。问题解决,成功更新。
  2. 考虑到http终归不安全,安装证书并更新。
sh 复制代码
apt install ca-certificates
update-ca-certificates

然后,将/etc/apt/sources.listhttp改回https

讨论

  • 换源时要去官方站点,CSDN博主分享的一些配置文件可能已经失效。官方站点中应有尽有,例如阿里云的站点。
  • 在没有vim等编辑器的情况下,可以借鉴上文笔者的方法,使用命令行的方式编辑文件。
相关推荐
Andy杨1 小时前
20250718-1-Kubernetes 应用程序生命周期管理-应用部署、升级、弹性_笔记
linux·docker·容器
2301_780789663 小时前
UDP和TCP的主要区别是什么
服务器·网络协议·web安全·网络安全·udp
写写闲篇儿5 小时前
Python+MongoDB高效开发组合
linux·python·mongodb
一个龙的传说6 小时前
linux 常用命令
linux·服务器·zookeeper
别致的影分身7 小时前
Docker 镜像原理
运维·docker·容器
阿葱(聪)7 小时前
java 在k8s中的部署流程
java·开发语言·docker·kubernetes
路人蛃7 小时前
通过国内扣子(Coze)搭建智能体并接入discord机器人
人工智能·python·ubuntu·ai·aigc·个人开发
Ching·8 小时前
esp32使用ESP-IDF在Linux下的升级步骤,和遇到的坑Traceback (most recent call last):,及解决
linux·python·esp32·esp_idf升级
斯是 陋室8 小时前
在CentOS7.9服务器上安装.NET 8.0 SDK
运维·服务器·开发语言·c++·c#·云计算·.net