Ubuntu18.04安装nvidia-docker报错:gpg: 找不到有效的 OpenPGP 数据。

在两台Ubuntu 18.04服务器上安装nvidia-docker时遇到gpg错误:找不到有效的OpenPGP数据。常规解决方案是手动指定distribution为ubuntu18.04,但此方法无效。最终通过离线安装nvidia-docker2(链接:https://pan.baidu.com/s/177MFsa4rjb91EE78vmvcfA,提取码:ma0j)并重启docker服务完成安装。问题可能由公司网络代理引起,建议尝试使用个人热点连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这几天在公司两台服务器上安装nvidia-docker总是报错gpg: 找不到有效的 OpenPGP 数据。记得以前在自己的电脑上安装,也是Ubuntu18.04,并没有报这个错误。
在网上有人说原因如下:
原因在于distribution=$(. /etc/os-release;echo I D ID IDVERSION_ID)会获取当前系统的release版本然后构建地址从nvidia的仓库中获取源,而nvidia的仓库中没有,https://nvidia.github.io/nvidia-docker/ubuntu18.10/nvidia-docker.list
解决方案是:
将distribution手动指定为ubuntu18.04(Debian10 对应改为 debian9)
修改后的命令如下:


                
### 解决方案 当尝试在 Ubuntu 18.04安装 Nvidia-Docker2 并遇到 `gpg: 不到有效OpenPGP 数据` 错误时,这通常是因为 GPG 密钥下载失败或者网络连接问题导致无法获取密钥文件[^1]。 #### 方法一:确保正确添加 GPG 密钥 可以先手动确认并添加 NVIDIA 的官方 GPG 密钥: ```bash curl -fsSL https://nvidia.github.io/nvidia-docker/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg ``` 接着更新 APT 源列表配置以使用新的密钥环路径: ```bash distribution=$(. /etc/os-release;echo $ID$VERSION_ID) sudo curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \ sed 's#deb http://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] http://#' | \ sudo tee /etc/apt/sources.list.d/nvidia-docker.list ``` #### 方法二:处理网络限制情况下的离线安装 如果因为网络原因无法在线获取密钥,则可以选择通过其他途径获得所需的 .deb 文件,并采用本地方式完成安装。例如可以从可信第三方资源下载适用于目标系统的 deb 包[^4]。 注意,在这种情况下应当特别谨慎对待来源的安全性和合法性,避免引入潜在风险。 #### 方法三:检查系统时间设置 有时不正确的系统时间为 GPG 验证带来麻烦,因此建议同步系统时间和日期后再试一次操作。 ```bash sudo timedatectl set-ntp true ``` #### 方法四:清理旧版本残留影响 如果有之前未完全卸载干净的老版驱动程序或其他组件干扰新版本的正常安装过程的话,应该彻底清除它们再重试。 ```bash sudo apt-get remove --purge '^cuda-' '^nvidia-' sudo rm -rf /var/lib/dkms/nvidia ``` 最后别忘了刷新软件源索引以及重新启动 Docker 服务来使更改生效: ```bash sudo apt update && sudo apt install -y nvidia-docker2 sudo systemctl restart docker ```
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值