当我运行软件更新程序并且存储库尝试重新加载时,总是产生以下错误消息?
W:GPG error: http://ppa.launchpad.net/gezakovacs/ppa/ubuntu bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY D45DF2E8FC91AE7E, E:The repository 'http://ppa.launchpad.net/gezakovacs/ppa/ubuntu bionic InRelease' is not signed.
答案1
错误消息表示存储库未更新,将使用以前的索引文件。这意味着您将不会从该存储库收到更新,因此您应该导入公共 GPG 密钥来修复此问题。
此命令更新您的特定存储库的密钥:
sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys D45DF2E8FC91AE7E
如果错误发生在多个存储库中,请尝试这个简短的脚本:
sudo apt update 2>&1 1>/dev/null | sed -ne 's/.*NO_PUBKEY //p' | while read key; do if ! [[ ${keys[*]} =~ "$key" ]]; then sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys "$key"; keys+=("$key"); fi; done
它会搜索所有丢失的密钥并更新它们。