Como corrigir chaves GPG ausentes?

144

Acabei de instalar o Ubuntu 12.04 e adicionei alguns repo, e quando fiz apt-get update , perdi a chave gpg.

O comando a seguir parece não funcionar para mim:

apt-get update 2> /tmp/keymissing; for key in $(grep "NO_PUBKEY" /tmp/keymissing |sed "s/.*NO_PUBKEY //"); do echo -e "\nProcessing key: $key"; gpg --keyserver subkeys.pgp.net --recv $key && sudo gpg --export --armor $key | apt-key add -; done

Como corrigir esse problema?

    
por Fih 29.04.2012 / 00:26

14 respostas

214

Eu gostei dessa solução, baixe novamente as chaves ausentes do servidor de chaves do Ubuntu.

Para o Ubuntu

No meu caso

 Reading package lists... Done  
 W: GPG error: http://ppa.launchpad.net precise 
 Release: The following signatures couldn't be verified because the public key is not available: 
 NO_PUBKEY 2EA8F35793D8809A

Aqui está o comando para adicionar a chave em falta mencionada na mensagem de erro.

sudo apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 2EA8F35793D8809A

Então eu peguei a chave faltante 2EA8F35793D8809A e pedi ao keyserver.ubuntu.com para adicioná-la à lista de chaves que eu tenho no apt.

Para o linux mint
Seu servidor principal é um pouco diferente keyserver.linuxmint.com

sudo apt-key adv --recv-key --keyserver keyserver.linuxmint.com "missing key"

Servidores de chaves alternativos para experimentar o keyserver.ubuntu.com

    
por nelaaro 23.05.2012 / 11:21
20

Existe um software chamado Y PPA manager Pode ajudar a corrigir erros de chaves GPG.
Y gerente de PPA

Para instalar -

sudo add-apt-repository ppa:webupd8team/y-ppa-manager  
sudo apt-get update  
sudo apt-get install y-ppa-manager    

Uma vez instalado, inicie-o, então vá para advance e selecione "importar todas as chaves GPG ausentes"

    
por Ashu 03.05.2012 / 13:06
14

O download automático usando apt-key adv --recv-keys pode não funcionar atrás de um firewall.

Neste caso, abra a página web do Servidor de chaves do Ubuntu no seu navegador e procure a string 0x<hexadecimal code of your missing key> .

Abra o link na seção pub . Salve o conteúdo da chave (de -----BEGIN PGP PUBLIC KEY BLOCK----- to -----END PGP PUBLIC KEY BLOCK----- ) como um arquivo.

Em seguida, execute:

sudo apt-key add <file-with-saved-key>

Fonte: link

    
por Melebius 29.04.2014 / 10:43
12

primeiro digite o seguinte comando no terminal

 sudo rm /var/lib/apt/lists/* -vf

atualize seu sistema digitando o seguinte comando no terminal

 sudo apt-get update && sudo apt-get upgrade

depois disso, não deve haver erros e tudo deve funcionar bem.

    
por Bharat 14.05.2012 / 12:26
10

Para o Ubuntu 12.04 Precise: Solução permanente

para esta mensagem de erro que ocorre depois de adicionar um novo repositório e atualizar a lista de repositórios. Isto é devido a um servidor cujo endereço não é mais válido. Então mude o endereço para um bom.

  1. Abra o arquivo ~/.gnupg/gpg.conf com um editor de texto.

    No terminal: gedit ~/.gnupg/gpg.conf

  2. então, neste arquivo, encontre a seguinte linha em negrito (linha 116) (que deve ser padrão como seguir):

      

    [...]
    keyserver hkp: //keys.gnupg.net
      # keyserver mailto: [email protected]
      # keyserver ldap: //keyserver.pgp.com

  3. adicione a seguinte linha em negrito, para finalmente dar a seguinte resultado:

    (adicione # à segunda linha como segue para comentar o endereço antigo)

      

    [...]
    keyserver http://keyserver.ubuntu.com
    # keyserver hkp: //keys.gnupg.net
          # keyserver mailto: [email protected]
          # keyserver ldap: //keyserver.pgp.com

  4. Salve o arquivo e tente atualizar novamente:

    No terminal: sudo apt-get update

por blitzter47 09.11.2012 / 01:44
6

A maneira mais fácil é com Y PPA MAnager

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager 

Abra o Y PPA Manager do Dash

Insira sua senha de administrador

Clique duplo em opção avançada

Clique em Tentar importar todas as chaves GPG ausentes

Clique em Ok para corrigir

    
por Qasim 08.05.2013 / 13:08
6

Baseado na resposta:

sudo apt-get update 2>&1 1>/dev/null | sed -ne 's/.*NO_PUBKEY //p' |
while read key; do
    echo 'Processing key:' "$key"
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys "$key"
done

O script despeja todos os erros em um arquivo temporário e, em seguida, faz um loop através deles, importando as chaves ausentes.

    
por Zafarella 13.04.2013 / 10:00
4

Primeiro digite o seguinte comando no terminal

sudo rm /var/lib/apt/lists/* -vf

atualize seu sistema digitando o seguinte comando no terminal

sudo apt-get update && sudo apt-get upgrade

depois disso, não deve haver erros e tudo deve funcionar bem.

    
por DaniilPiter 18.02.2013 / 02:34
1

Encontrei o mesmo problema, adicionando um ppa ( ppa:nathandyer/vocal-stable ), quebrou meus repositórios. Fui orientado pelo autor do Web Upd8, sobre como posso tentar consertar isso, aqui estão os passos dele que funcionaram comigo.

Faça o backup das chaves .gpg , caso algo dê errado.

Vamos criar uma pasta na qual armazenaremos nosso backup.

  • mkdir ~/gpg-backups

    Isso faz o backup de todos os arquivos na pasta /etc/apt/trusted.gpg.d/ .

  • sudo cp /etc/apt/trusted.gpg.d/*.* ~/gpg-backups/

Agora, removeremos todas as chaves .gpg .

  • sudo rm /etc/apt/trusted.gpg.d/

  • sudo cp /etc/apt/trustdb.gpg ~/gpg-backups/

  • sudo rm /etc/apt/trustdb.gpg

  

em Software & amp; Atualizações, na guia "Autenticação", clicou em "Restaurar Padrões

Instale o gerenciador y-ppa para importar todas as chaves GPG ausentes

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager

Referência :

por blade19899 22.04.2015 / 21:14
1

Eu queria corrigir automaticamente erros como este em um script bash. Para qualquer pessoa interessada, isso deve funcionar:

sudo apt-get update 2> /tmp/keymissing
if [ -f /tmp/keymissing ]
then
    for key in $(grep "NO_PUBKEY" /tmp/keymissing |sed "s/.*NO_PUBKEY //")
        do 
        echo -e "\nProcessing key: $key"
        sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
        sudo apt-get update
    done
    rm /tmp/keymissing
fi
    
por user2304170 01.05.2016 / 13:10
1

O que funcionou para mim foi excluir a chave primeiro e depois reinstalar. Para conseguir isso, fiz o seguinte:

root@ > ~: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 630239CC130E1A7FD81A27B140976EAF437D05B5

excluindo com

root@ > ~: sudo apt-key del 630239CC130E1A7FD81A27B140976EAF437D05B5

Em seguida, reinstale-o digitando

root@ > ~: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 630239CC130E1A7FD81A27B140976EAF437D05B5                                       
    
por QuixRhyno 27.04.2018 / 17:47
0

Se você tem algo assim:

# aptitude update
...
Ign http://archive.canonical.com wily/partner Translation-en_US
Fetched 422 kB in 3s (130 kB/s)
W: GPG error: http://ubuntu.volia.net wily InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32

Primeiro de tudo, tente:

# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

A saída do último comando pode ser:

gpg: keyblock resource '/etc/apt/trusted.gpg.d/webupd8team_ubuntu_experiments.gpg': resource limit
gpg: keyblock resource '/etc/apt/trusted.gpg.d/webupd8team_ubuntu_gthumb.gpg': resource limit

Então, você precisa ir para /etc/apt/trusted.gpg.d/ e remover chaves não usadas e, em seguida, repetir apt-key adv e aptitude update

    
por ipeacocks 17.12.2015 / 22:39
-1

Esse problema me ocorreu quando eu instalei o 12.04 usando as configurações alemãs. A lista de repositórios, em seguida, está usando repositórios de espelhos alemães por padrão. Se for esse o caso, você pode editar a lista de repositórios e alterar todos os repositórios espelho alemães para os repositórios padrão do Ubuntu.

Você pode usar o seguinte método:

sudo nano /etc/apt/sources.list

Pesquise e substitua no Nano usando Alt - r

Pesquisa (para substituir): /de.

Substitua por: /

Substituir Tudo (Pressione A )

Salve o arquivo Ctrl - x

Em seguida, atualize seu sistema, digitando o seguinte comando no terminal:

sudo apt-get update && sudo apt-get upgrade

Depois disso, não deve haver erros e tudo deve funcionar bem.

    
por taufan 17.04.2013 / 12:02
-2

você pode usar o repogen. Você receberá todas as instruções, incluindo a verificação das chaves GPG. Abaixo está o link.

link

    
por feroz 06.09.2016 / 01:24