gnupg: Obtendo erros ao tentar gpg --gen-key


8

Eu tentei excluir meu diretório .gnupg, mas o erro retornou.

Eu entendi isso:

gpg: lookup_hashtable failed: eof
gpg: lookup_hashtable failed: eof
gpg: upd_hashtable: read failed: eof
gpg: trust record 2, type 12: write failed: eof
gpg: Error: The trustdb is corrupted.
gpg: You may try to re-create the trustdb using the commands:
gpg:   cd ~/.gnupg
gpg:   gpg2 --export-ownertrust > otrust.tmp
gpg:   rm trustdb.gpg
gpg:   gpg2 --import-ownertrust < otrust.tmp
gpg: If that does not work, please consult the manual

Tentei seguir o conselho do erro e isso também não funciona. Tentei pesquisar no problema no Google, mas nada aparece para "lookup_hastable".

Também instalei o cavalo-marinho e tenho minhas chaves ssh armazenadas no cavalo-marinho. Poderia haver conflito acontecendo com cavalos-marinhos?

Estou fugindo gpg --gen-keyda minha conta de usuário normal e não estou tentando fazer nada sofisticado: basta criar uma chave gpg padrão.


você seguiu as instruções da mensagem de erro?
Timothy Truckle

1
Que versão do GnuPG é essa? Existe uma instância de gpg-agentexecução que está interferindo e que pode precisar ser eliminada?
Kusalananda

2
Executegpg --fix-trustdb
GAD3R 2/17/17

1
Eu tinha o gpg-agent funcionando. Eu o matei e tentei criar outra chave: o mesmo problema. Então eu apaguei meu diretório ~ / .gnupg e ele funciona! Vou tentar reiniciar para ver se o gpg-agent volta para me parar novamente. Obrigado!
precisa saber é o seguinte

2
gpg-agentserá iniciado automaticamente ao realizar operações importantes com o GnuPG 2.1, como deveria. O problema era que você estava usando duas versões diferentes do GnuPG de uma só vez ou que alguma outra coisa modificou o conteúdo do .gnupgdiretório de uma maneira que gpg-agentficou confusa. Ao excluir o .gnupgdiretório, a execução gpg-agentnão o conhecia. Esse é um tipo de explicação "acenando a mão".
Kusalananda

Respostas:


2

Eu enfrentei um problema semelhante com a falha lookup_hashtable devido a isso Unknown system error.

Achei que isso aconteceu depois de importar uma chave privada através do gpg (e não do gpg2) usando gpg --allow-secret-key-import --import private.key

Depois de definir o nível de confiança após esta postagem , o erro desapareceu.


Obrigado, ajudou! Eu acho que como parte de comandos que ele está usando rm que falhará se ele é interativo "rm -i"
kumar

0

Eu tive o mesmo problema. O que é importante perceber é que existem duas versões principais do GnuPG ('classic' e 'stable', e também existe um 'modern' 2.1): gpge gpg2(no Fedora Core elas são fornecidas por pacotes gnupge gnupg2respectivamente).

Pesquisei trustdbbastante na Internet , removi ~/.gnupg, mas pude encontrar muito pouca informação e isso não ajudou.

Como no repositório do SO havia uma versão antiga gpg, baixei um 'moderno' gpgdo site oficial. Houve um problema com libgrypt, eu precisava instalar uma versão mais recente da biblioteca para gpgfuncionar. Quando eu fiz isso manualmente, meu sistema se recusou a inicializar. Acho que vou consertar isso em breve, mas agora trabalho em outro laptop.

Finalmente, percebi que havia um pacote gnupg2e usei o comando em gpg2vez de gpg. Isso funcionou perfeitamente. Você pode definir uma festança alias gpg=gpg2em sua .bash_profilese quiser esquecer os números em tudo.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.