sudo apt update && sudo apt install locales sudo locale-gen en_US en_US.UTF-8 sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 export LANG=en_US.UTF-8 Get:1 https://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bookworm InRelease [15.0 kB] Get:2 https://mirrors.tuna.tsinghua.edu.cn/raspbian/multiarch bookworm InRelease [3918 B] Get:3 https://mirrors.tuna.tsinghua.edu.cn/raspberrypi bookworm InRelease [39.1 kB] Err:2 https://mirrors.tuna.tsinghua.edu.cn/raspbian/multiarch bookworm InRelease The following signatures couldn't be verified because the public key is not available: NO_PUBKEY E77FC0EC34276B4B Reading package lists... Done W: Target Packages (main/binary-armhf/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/raspberrypi.sources:2 W: Target Packages (main/binary-arm64/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/raspberrypi.sources:2 W: Target Packages (main/binary-all/Packag
时间: 2025-08-24 15:23:27 AIGC 浏览: 24
<think>好的,用户现在在Raspbian系统中遇到了apt更新时的公钥不可用和重复源配置的问题,具体错误是NO_PUBKEY E77FC0EC34276B4B和重复的sources.list配置。我需要结合用户提供的引用和他们之前的问题来给出解决方案。
首先,用户提供的引用中,引用3、4、5提到了处理NO_PUBKEY的方法,比如使用apt-key命令导入缺失的公钥。但需要注意的是,在较新的Debian/Ubuntu系统中,apt-key已被废弃,推荐使用更安全的方式,比如将密钥添加到/etc/apt/trusted.gpg.d/目录下。不过Raspbian可能还在使用旧的方法,所以可能需要结合实际情况来处理。
然后,重复的sources.list配置问题,用户可能在/etc/apt/sources.list或/etc/apt/sources.list.d/目录下的文件中存在重复的条目。需要指导用户检查并删除重复的行或文件,然后运行apt update。
接下来要考虑用户之前的问题是关于locale设置错误的解决,现在转向了apt更新的问题,可能需要确认用户是否在Raspberry Pi上使用Raspbian,以及系统版本是否较旧,导致一些命令的兼容性问题。
另外,用户引用5中提到使用不安全的选项来绕过验证,但这不是推荐的做法。应该优先建议修复公钥问题,而不是禁用安全验证。需要提醒用户避免使用这种方法,除非万不得已。
关于公钥E77FC0EC34276B4B,需要查找对应的密钥服务器。通常可以通过keyserver.ubuntu.com或pgp.mit.edu等服务器获取。用户引用3和4中已经提到了使用apt-key adv命令,所以可能需要指导用户使用类似的方法,但要注意是否适用。
重复的源配置可能导致apt update时出现警告,需要检查所有源文件,包括sources.list和sources.list.d/下的文件,是否有重复或冲突的条目。可以使用grep命令来查找重复的源。
最后,用户可能需要更新软件包列表和升级系统,以确保所有更改生效,并确认问题是否解决。同时提醒用户定期维护系统源列表,避免未来出现类似问题。</think>### 解决Raspbian系统中apt更新公钥错误与重复源配置
#### 问题分析
根据错误信息 `NO_PUBKEY E77FC0EC34276B4B` 和 `duplicate sources.list configuration`,问题由以下原因导致:
1. **缺失公钥**:APT仓库签名使用的公钥未在本地注册[^3][^4]。
2. **重复软件源**:在 `/etc/apt/sources.list` 或 `/etc/apt/sources.list.d/` 中存在重复配置[^2]。
---
#### 分步解决方案
1. **修复缺失的公钥**
```bash
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E77FC0EC34276B4B
```
- 若上述命令失败(因旧版`apt-key`兼容性问题),改用:
```bash
gpg --keyserver keyserver.ubuntu.com --recv-key E77FC0EC34276B4B
gpg --export --armor E77FC0EC34276B4B | sudo apt-key add -
```
2. **清理重复的软件源**
```bash
# 检查重复项
grep -r "deb .*raspbian" /etc/apt/sources.list /etc/apt/sources.list.d/
# 手动编辑配置文件(示例)
sudo nano /etc/apt/sources.list # 删除重复行
sudo rm /etc/apt/sources.list.d/duplicate_file.list # 删除重复文件
```
3. **更新APT缓存**
```bash
sudo apt clean # 清理旧缓存
sudo apt update # 重新加载软件源
```
---
#### 关键注意事项
1. **密钥服务器选择**:若 `keyserver.ubuntu.com` 不可用,尝试 `pgp.mit.edu` 或 `keys.openpgp.org`。
2. **源文件权限**:确保 `/etc/apt/sources.list.d/` 下的文件权限为 `644`。
3. **避免绕过验证**:不建议使用 `Acquire::AllowInsecureRepositories` 参数(如引用[^5]),这会降低系统安全性。
---
#### 验证修复
```bash
sudo apt update 2>&1 | grep -E "NO_PUBKEY|重复" # 确认无相关错误
apt policy package_name # 检查特定包是否可正常获取
```
---
阅读全文
相关推荐



















