---
title: "GPG : les messages d'erreurs"
date: 2018-03-04T18:55:50+01:00
description: "Du traitement des messages d'erreurs de GPG, et du client gpg-agent"
draft: false
lastmod: 2019-03-17T18:29:50+01:00
tags: ["GPG", "erreur"]
---
## Description
Cet article répertorie les différentes erreurs plus ou moins classiques,
et essaie d'apporter une réponse !
## Messages
### Attention : les droits du répertoire personnel « ~/.gnupg » ne sont pas sûrs
Faites à minima un *chmod 0600* dessus :
`$ chmod 0600 ~/.gnupg`
### error: cannot run gpg: No such file or directory
`error: cannot run gpg: No such file or directory`
`error: impossible de lancer gpg.`
Le système ne trouve pas l'outil **GPG**. {{< color red >}}Vérifiez votre installation{{}}…
### gpg: échec de la signature : Inappropriate ioctl for device
`gpg: échec de la signature : Inappropriate ioctl for device`
`gpg: signing failed: Inappropriate ioctl for device`
{{< color red >}}Vérifiez{{}} que les paquets `pinentry`, et/ou ses variantes pour **gtk**
sous Linux, \*BSD soient installés : `pinentry-gtk2`, `pinentry-gtk3`
Sinon, faites-le !
### gpg: failed to start the dirmngr
`gpg: failed to start the dirmngr '/usr/bin/dirmngr': Aucun fichier ou dossier de ce type`
`gpg: connecting dirmngr at '/tmp/apt-key-gpghome.fPXOnUY2mr/S.dirmngr' failed: Aucun fichier ou dossier de ce type`
`gpg: keyserver receive failed: Pas de dirmngr`
{{< color red >}}Vérifiez{{}} que le paquet **dirmgnr** soit installé ; sinon, faites-le !
### gpg: des parties de la clef secrète ne sont pas disponibles
**La clé que vous cherchez à utiliser ou avec laquelle vous cherchez à signer est en mode "protégé".**
Le seul moyen que j'ai trouvé est de supprimer la clé
en question :
{{< code "sec-gpg-delete-secrets-keys" >}}
Puis de réimporter le fichier de signature de clé privée que vous avez
créé suite à la création de ladite clé :
{{< code "sec-gpg-import-private-key" >}}
## gpg-agent :: erreurs
### gpg: gpg-agent n'est pas disponible dans cette session
Avez-vous veillé à [exporter la variable GPG_TTY](https://www.gnupg.org/documentation/manuals/gnupg/Invoking-GPG_002dAGENT.html) ?
Ajoutez dans votre fichier `.bashrc`, ou `.kshrc` :
`export GPG_TTY="$(tty)"`
----