Ubuntu 22.04.3 LTS执行apt更新时遭遇无效签名错误,无法更新及安装软件
Ubuntu 22.04.3 LTS执行apt更新时遭遇无效签名错误,无法更新及安装软件
看起来你遇到的是APT源GPG签名验证失败+GPG密钥存储环境损坏的组合问题,我来一步步帮你排查解决:
一、先修复GPG密钥存储目录的权限问题
你执行apt-key list时出现create_gpg_home:trap:14: undefined signal: ABRT错误,这大概率是root用户的GPG目录权限异常导致的,先修复这个:
- 检查当前权限:
sudo ls -ld /root/.gnupg
- 重置目录权限(如果权限不是drwx------或者所有者不是root:root的话):
sudo chmod 700 /root/.gnupg sudo chown -R root:root /root/.gnupg
二、重新导入Ubuntu官方GPG密钥
你的Ubuntu源全部报签名错误,说明系统里的官方密钥可能过期或丢失了,重新导入:
方法1(兼容旧版apt-key,不过apt-key已被标记为废弃):
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32 871920D1991BC93C
方法2(推荐的新方式,使用keyring存储密钥):
curl -fsSL https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3B4FE6ACC0B21F32 | sudo gpg --dearmor -o /usr/share/keyrings/ubuntu-archive-keyring.gpg curl -fsSL https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920D1991BC93C | sudo gpg --dearmor -o /usr/share/keyrings/ubuntu-archive-keyring.gpg
三、修复Brave浏览器的源密钥
Brave的源同样报签名错误,重新导入它的官方密钥并修正源配置:
- 导入Brave密钥:
curl -fsSL https://brave-browser-apt-release.s3.brave.com/brave-core.asc | sudo gpg --dearmor -o /usr/share/keyrings/brave-browser-archive-keyring.gpg
- 检查并修正Brave的源配置文件:
打开/etc/apt/sources.list.d/brave-browser-release.list,确保内容是:deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg] https://brave-browser-apt-release.s3.brave.com/ stable main
如果不是,用编辑器修改(比如sudo nano /etc/apt/sources.list.d/brave-browser-release.list)。
四、清理缓存并重新更新
做完上面的步骤后,清理APT缓存并尝试更新:
- 清理缓存:
sudo apt clean
- 尝试修复更新:
sudo apt update --fix-missing
五、如果以上步骤无效,重置APT源配置
如果还是不行,可能是源配置文件损坏,我们可以重置为默认的官方源:
- 备份当前的源配置(避免丢失自定义源):
sudo cp -r /etc/apt/sources.list.d/ ~/apt-sources-backup sudo cp /etc/apt/sources.list ~/apt-sources.list-backup
- 生成默认的sources.list:
sudo rm /etc/apt/sources.list sudo touch /etc/apt/sources.list echo "deb http://archive.ubuntu.com/ubuntu jammy main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list echo "deb http://archive.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list echo "deb http://archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list echo "deb http://security.ubuntu.com/ubuntu jammy-security main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list
- 再次执行更新:
sudo apt update
解决完源的问题后,你再尝试安装postgresql应该就能正常进行了。
备注:内容来源于stack exchange,提问作者Lovedz
相关产品推荐
相关产品推荐

