GitLab-Runner更新失败:GPG签名无效问题求助
GitLab-Runner更新提示无效GPG密钥的解决方法(Debian 12/Ubuntu 22)
你遇到的问题是GitLab官方APT仓库的签名密钥配置不符合Debian 12(Bookworm)和Ubuntu 22.04+的新安全要求,而非系统异常或GitLab更新问题——旧版的apt-key命令已被弃用,直接添加密钥的方式不再生效。
错误原因
Debian 12和Ubuntu 22.04之后,APT出于安全考虑,不再信任apt-key添加的全局密钥,要求密钥必须存储在/usr/share/keyrings/目录下,且在源配置中明确指定密钥文件路径,否则会触发签名验证失败的错误。
解决步骤
- 删除旧的无效密钥
apt-key del 3F01618A51312F3F
- 下载并安装合规的GitLab GPG密钥
将密钥文件保存到APT认可的密钥环目录:
curl -fsSL https://packages.gitlab.com/gitlab/gitlab-runner/gpgkey | gpg --dearmor -o /usr/share/keyrings/gitlab-runner-archive-keyring.gpg
- 更新APT源配置
替换现有GitLab-Runner的源配置,确保指定密钥文件路径:
- 对于Debian 12(Bookworm):
echo "deb [signed-by=/usr/share/keyrings/gitlab-runner-archive-keyring.gpg] https://packages.gitlab.com/runner/gitlab-runner/debian bookworm main" > /etc/apt/sources.list.d/gitlab-runner.list
- 对于Ubuntu 22.04(Jammy):
echo "deb [signed-by=/usr/share/keyrings/gitlab-runner-archive-keyring.gpg] https://packages.gitlab.com/runner/gitlab-runner/ubuntu jammy main" > /etc/apt/sources.list.d/gitlab-runner.list
- 执行更新验证
apt-get update
完成以上步骤后,APT就能正常验证GitLab-Runner仓库的签名,更新操作即可正常进行。
内容的提问来源于stack exchange,提问作者Arunas Bart
相关产品推荐
相关产品推荐

