Você pode ver um erro de chave GPG público (“NO_PUBKEY”) no Debian, Ubuntu ou Mint ao executar o apt update. Isso pode acontecer quando você adiciona um repositório e se esquece de adicionar sua chave pública ou talvez tenha havido um erro temporário do servidor de chaves ao tentar importar a chave GPG.
Quando você executa uma atualização apt update, ou quando tenta atualizar as fontes de software usando alguma ferramenta com interface gráfica, apt reclama não poder baixar todos os índices do repositório, mostrando erros como este:

Este é apenas um exemplo ao adicionar o repositório do Ubuntu Bionic Beaver (18.04 LTS). Esse erro pode ocorrer não apenas com repositórios PPA do Launchppad, mas com qualquer repositório, como os fornecidos pelo Google, ou Node.js, etc.
A mensagem de erro diz que o repositório não está atualizado e que os arquivos de índice anteriores serão usados. Isso significa que você não receberá atualizações desse repositório, portanto, você deve importar a chave GPG pública para resolver esse problema, além de ser bloqueada por um problema de segurança.
As seguintes assinaturas não puderam ser verificadas porque a chave pública não está disponível: NO_PUBKEY …. error Você não pode atualizar de um repositório como este com segurança e, portanto, ele está desabilitado por padrão .. Deve funcionar no Debian, Ubuntu, Mint, Pop! e qualquer outra distribuição GNU / Linux baseada no Debian ou no Ubuntu.
Solução 1: Correção rápida de NO_PUBKEY para um único repositório/chave.
Se você só precisa de uma chave pública do repositório GPG, você pode executar este comando no seu sistema Ubuntu / Mint / Pop! _OS / Debian para consertá-lo:
sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys aquí_a_chave
Onde aqui_a_chave você deve digitar a chave que você solicita. A chave é mostrada no registro de atualização do apt, após NO_PUBKEY. Por exemplo, na mensagem de erro que publiquei anteriormente, a chave GPG ausente é composta de números e letras.
Solução 2: importar em lote todas as chaves GPG ausentes.
Quando várias chaves públicas do OpenPGP estão faltando, você pode usar uma linha simples para importá-las todas de uma vez:
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
Não há necessidade de alterar qualquer parte do comando, basta executá-lo como está. Isso também funciona para consertar uma única chave GPG que está faltando, mas é um pouco redundante. No entanto, ele funciona com qualquer número de chaves GPG ausentes.
O comando executa sudo apt update para atualizar suas fontes de software e detectar chaves GPG ausentes, e importa cada chave ausente usando hkp://pool.sks-keyservers.net:80 como um servidor. Esse servidor é sincronizado com muitos outros servidores continuamente, portanto, deve ter chaves atualizadas. Você pode usar outro servidor, se desejar.
O comando também usa uma matriz para armazenar as chaves GPG ausentes e para as quais já importamos a chave. Sem isso, o comando key import seria executado duas vezes para cada chave perdida.