ubuntu 18.04国内源出现错误:1 https://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic InRelease 由于没有公钥,无法验证下列签名: NO_PUBKEY 3B4FE6ACC0B21F32
时间: 2024-10-22 13:25:16 浏览: 391
Ubuntu 18.04在国内使用清华镜像时遇到"NO_PUBKEY"错误通常是由于官方软件仓库的公钥未能正确安装或更新。当你尝试访问镜像服务器时,系统需要验证其身份,而缺少公钥就会导致这个错误。
解决这个问题的步骤如下:
1. **添加缺失的公钥**:
打开终端(Terminal),运行命令来手动导入缺失的公钥:
```
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
```
这里`3B4FE6ACC0B21F32`是出错的密钥ID。
2. **刷新软件包列表**:
完成上述操作后,再次尝试更新软件包列表:
```
sudo apt-get update
```
3. **安装或升级软件**:
如果之前的操作成功,你可以继续安装或升级已知来源的软件包:
```
sudo apt-get upgrade
sudo apt-get install <package-name>
```
将 `<package-name>` 替换为你想要安装的具体软件包名。
如果以上步骤仍然失败,可能是网络问题或者是镜像本身的问题,建议检查网络连接,尝试更换其他国内镜像源,如阿里云、中科大等,并设置为首选源。
相关问题
Get:320 http://ports.ubuntu.com/ubuntu-ports bionic-security/multiverse arm64 DEP-11 Metadata [208 B] Get:279 http://ports.ubuntu.com/ubuntu-ports bionic-updates/restricted arm64 DEP-11 Metadata [212 B] Fetched 5,077 kB in 2min 14s (37.8 kB/s) Reading package lists... Done E: Failed to fetch http://mirrors.aliyun.com/ubuntu/dists/bionic/main/binary-arm64/Packages 404 Not Found [IP: 222.192.186.76 80] E: Failed to fetch http://mirrors.aliyun.com/ubuntu/dists/bionic-security/main/binary-arm64/Packages 404 Not Found [IP: 222.192.186.76 80] E: Failed to fetch http://mirrors.aliyun.com/ubuntu/dists/bionic-updates/main/binary-arm64/Packages 404 Not Found [IP: 222.192.186.76 80] E: Failed to fetch http://mirrors.aliyun.com/ubuntu/dists/bionic-proposed/main/binary-arm64/Packages 404 Not Found [IP: 222.192.186.76 80] E: Failed to fetch https://mirrors.ustc.edu.cn/ubuntu/dists/bionic/main/binary-arm64/Packages 404 Not Found [IP: 202.38.95.110 443] E: Failed to fetch https://mirrors.tuna.tsinghua.edu.cn/ubuntu/dists/bionic/main/binary-arm64/Packages 404 Not Found [IP: 101.6.15.130 443] E: Failed to fetch https://mirrors.ustc.edu.cn/ubuntu/dists/bionic-security/main/binary-arm64/Packages 404 Not Found [IP: 202.38.95.110 443] E: Failed to fetch https://mirrors.tuna.tsinghua.edu.cn/ubuntu/dists/bionic-updates/main/binary-arm64/Packages 404 Not Found [IP: 101.6.15.130 443] E: Failed to fetch https://mirrors.tuna.tsinghua.edu.cn/ubuntu/dists/bionic-backports/main/binary-arm64/Packages 404 Not Found [IP: 101.6.15.130 443] E: Failed to fetch https://mirrors.tuna.tsinghua.edu.cn/ubuntu/dists/bionic-security/main/binary-arm64/Packages 404 Not Found [IP: 101.6.15.130 443] E: Failed to fetch https://mirrors.tuna.tsinghua.edu.cn/ubuntu/dists/bionic-proposed/main/binary-arm64/Packages 404 Not Found [IP: 101.6.15.130 443] E: Failed to fetch https://mirrors.ustc.edu.cn/ubuntu/dists/bionic-updates/main/binary-arm64/Packages 404 Not Found [IP: 202.38.95.110 443] E: Failed to fetch https://mirrors.ustc.edu.cn/ubuntu/dists/bionic-backports/main/binary-arm64/Packages 404 Not Found [IP: 202.38.95.110 443] E: Some index files failed to download. They have been ignored, or old ones used instead.
<think>好的,我现在需要帮助用户解决他们在运行apt update时遇到的404错误。用户之前的问题是关于nano未安装,现在他们遇到了软件源的问题。首先,我需要理解错误信息中的关键点。错误显示多个仓库的URL返回404,特别是针对arm64架构的包。这些URL包括阿里云、中科大和清华的镜像源。
首先,我应该考虑这些镜像源是否支持arm64架构。Ubuntu的不同镜像源可能对架构的支持不同,有些可能没有为arm64提供完整的软件包。比如,用户使用的是Ubuntu 18.04(bionic),而某些镜像源可能在bionic的仓库中没有arm64的二进制包,或者路径不同。
接下来,用户可能在软件源列表(sources.list)中配置了多个镜像源,导致系统尝试从多个地方获取arm64的包,但有些镜像源不支持,因此返回404。例如,阿里云的镜像可能没有为bionic的arm64提供main仓库的包,或者路径结构不同。同样的问题可能出现在其他镜像源上。
解决方案的第一步应该是检查当前的软件源配置。用户可能需要将软件源切换到官方端口仓库(ports.ubuntu.com),因为官方仓库通常会支持所有架构,包括arm64。此外,用户可能错误地使用了针对amd64的镜像源,而没有使用专门为arm64配置的源。
另一个可能性是Ubuntu 18.04(bionic)的某些仓库已经归档,转移到了old-releases仓库。如果用户使用的镜像源没有正确指向旧版仓库,也会导致404错误。不过,根据错误信息中的URL,用户似乎还在使用常规的仓库路径,而不是old-releases,所以这可能不是主要原因。
接下来,我需要建议用户修改他们的sources.list文件,替换镜像源为支持arm64的官方端口或确认可用的镜像。例如,将http://ports.ubuntu.com/ubuntu-ports作为主源,或者使用已知支持arm64的国内镜像,如清华源的ubuntu-ports部分。
另外,用户可能需要检查每个软件源行是否正确指定了[arch=arm64],或者是否遗漏了特定的组件(如main、universe等)。此外,确保发行版名称(bionic)和仓库类别(updates, security等)正确无误。
在指导用户修改sources.list时,需要提醒他们备份原文件,避免出错。然后,提供具体的sed命令或手动编辑的步骤,替换镜像源为正确的地址。之后,运行apt update来测试是否解决了问题。
如果问题仍然存在,可能需要进一步检查网络连接,或者尝试不同的镜像源。例如,推荐使用清华源或中科大的arm64专用镜像,并确保URL路径正确。
最后,如果用户的问题是因为Ubuntu版本较旧(如18.04已过支持周期),建议升级到较新的LTS版本,如20.04或22.04,以获得更好的支持和更新的软件包。</think>### **错误原因分析**
出现`404 Not Found`错误的主要原因是**软件源配置中的镜像地址不支持arm64架构**或**镜像站未维护旧版Ubuntu仓库**。您当前系统是Ubuntu 18.04(代号`bionic`),且为ARM64架构,但配置的镜像源(阿里云、清华、中科大等)可能:
1. 未提供`bionic`版本的arm64软件包
2. 未正确同步`ubuntu-ports`仓库(ARM架构专用仓库)
3. 镜像站已停止维护旧版Ubuntu资源
---
### **解决方案**
#### **步骤1:切换至官方ARM专用仓库**
```bash
# 备份原配置文件
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# 使用sed命令替换镜像源为官方ports仓库
sudo sed -i 's|http://[^/]*/ubuntu|http://ports.ubuntu.com/ubuntu-ports|g' /etc/apt/sources.list
sudo sed -i 's|https://[^/]*/ubuntu|http://ports.ubuntu.com/ubuntu-ports|g' /etc/apt/sources.list
# 更新软件源
sudo apt update
```
#### **步骤2:使用国内ARM兼容镜像源(如清华源)**
若需国内加速,需**明确使用支持`ubuntu-ports`的镜像**:
```bash
# 编辑sources.list
sudo nano /etc/apt/sources.list
# 替换所有内容为以下配置(清华源ARM64专用)
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
```
#### **步骤3:清理缓存并重试**
```bash
# 清除旧索引
sudo rm -rf /var/lib/apt/lists/*
# 重新生成缓存
sudo apt update
```
---
### **关键配置验证**
检查`sources.list`需满足以下格式:
```
deb http://[支持arm64的镜像地址]/ubuntu-ports bionic-[类别] main restricted universe multiverse
```
- ✅ 正确地址:`http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports`
- ❌ 错误地址:`http://mirrors.aliyun.com/ubuntu`(缺少`-ports`路径)
---
### **操作效果对比**
| 操作前错误特征 | 修复后成功标志 |
|------------------------------|---------------------------------|
| `.../bionic/main/binary-arm64/Packages 404` | `Hit:1 http://ports.ubuntu.com bionic InRelease` |
| 多镜像源交替报错 | 统一从`ubuntu-ports`仓库下载 |
---
### **扩展建议**
1. **升级Ubuntu版本**
Ubuntu 18.04(bionic)已于2023年4月停止官方支持,建议升级至20.04/22.04:
```bash
sudo do-release-upgrade
```
2. **检查仓库架构支持**
访问镜像站目录验证路径是否存在(以清华源为例):
[http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/dists/bionic/main/binary-arm64/](http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/dists/bionic/main/binary-arm64/)
---
### **常见问题处理**
| 现象 | 解决方案 |
|-------------------------------|----------------------------|
| 替换镜像源后仍报404 | 检查是否遗漏`-ports`路径 |
| 无法连接官方仓库 | 使用`curl -I http://ports.ubuntu.com`测试网络连通性 |
| 依赖包缺失 | 添加`universe`和`multiverse`仓库 |
如果需要进一步调试,可执行以下命令检查仓库配置:
```bash
apt-config dump | grep -i "uri" # 查看当前生效的仓库地址
```
zbs@zbs-virtual-machine:/etc/apt$ cat /etc/apt/sources.list deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main universe restricted deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main universe restricted 他这个不对,我怎么把他修改一下
<think>好的,我现在需要帮助用户正确配置Ubuntu 18.04的apt源使用清华镜像。首先,我得回忆一下Ubuntu源配置的基本步骤。记得源文件是/etc/apt/sources.list,用户需要替换里面的内容为清华镜像的地址。
然后,用户提到的是清华源,所以我得确认正确的镜像地址。清华大学的镜像站通常有具体的URL,比如https://mirrors.tuna.tsinghua.edu.cn/ubuntu/。对于不同的Ubuntu版本,路径可能会不同,18.04的代号是bionic,所以路径应该是这样的。
接下来,我需要考虑备份原来的源文件,这是一个重要的步骤,避免配置错误后无法恢复。用户可能需要先执行sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak这样的命令来备份。
然后,替换源内容。可能需要用sed命令直接替换,或者手动编辑文件。不过用户可能更希望得到直接可用的命令,比如使用echo或者tee来写入新的内容。例如,使用sudo tee命令将新的配置写入sources.list。
另外,需要注意清华源的条目是否正确,包括主仓库、安全更新和预发布软件等部分。通常配置文件中会有多个行,每个对应不同的组件,比如main、restricted、universe、multiverse,以及不同的类别如deb和deb-src。
还需要提醒用户更新软件包列表,执行sudo apt update,这样更改才能生效。如果遇到依赖问题,比如引用[4]提到的libssl1.0.0的问题,可能需要运行sudo apt -f install来解决依赖关系。
可能还需要检查用户是否在使用其他源,比如华为源或者阿里源,但用户这次明确要求清华源,所以不需要考虑其他选项。同时,确保用户使用的是Ubuntu 18.04(bionic),因为不同版本的代号不同,路径也会不同。
最后,生成相关问题的时候,要围绕Ubuntu源配置的常见问题,比如如何测试源速度、处理GPG错误、切换其他镜像源等。确保问题覆盖用户可能遇到的后续疑问。
总结步骤应该是:备份原文件,写入清华源配置,更新软件列表,处理可能的依赖问题。同时需要验证步骤是否正确,比如检查sources.list的内容是否正确,以及执行apt update是否有错误。</think>### 如何正确配置Ubuntu 18.04 (bionic)的清华镜像源
#### 步骤说明
1. **备份原有源文件**
修改前需备份原配置文件,防止配置错误导致系统无法更新:
```bash
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
```
2. **写入清华镜像源配置**
使用以下命令覆盖`sources.list`文件内容:
```bash
sudo tee /etc/apt/sources.list << EOF
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
EOF
```
- `deb-src`行可根据需要添加,用于源码包下载[^3]。
3. **更新软件包列表**
更新APT缓存以应用新配置:
```bash
sudo apt update
```
- 若出现依赖问题(如`libssl1.0.0`),可尝试:
```bash
sudo apt -f -y install && sudo apt update
```
参考引用[4]解决依赖冲突。
4. **验证配置**
检查APT更新是否正常,例如:
```bash
sudo apt upgrade
```
#### 注意事项
- **网络连接**:确保服务器能访问清华镜像站(`mirrors.tuna.tsinghua.edu.cn`)。
- **版本匹配**:Ubuntu 18.04代号为`bionic`,不可替换为其他版本代号(如`focal`对应20.04)[^1][^2]。
- **镜像选择**:若清华源速度不理想,可替换为阿里云(`mirrors.aliyun.com`)或华为源(`repo.huaweicloud.com`)。
---
阅读全文
相关推荐
















