Como corrigir chaves GPG ausentes?

146

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

15 respostas

215

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> .

Abraolinknaseçãopub.Salveoconteúdodachave(de-----BEGINPGPPUBLICKEYBLOCK-----to-----ENDPGPPUBLICKEYBLOCK-----)comoumarquivo.

Emseguida,execute:

sudoapt-keyadd<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
9

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

Insirasuasenhadeadministrador

Clique duplo em opção avançada

CliqueemTentarimportartodasaschavesGPGausentes

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

in Software & Updates, on the "Authentication" tab, clicked "Restore Defaults

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

Executar wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

    
por 14.10.2018 / 12:30
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