GPG キー生成に失敗しました - そのようなファイルまたはディレクトリはありません

GPG キー生成に失敗しました - そのようなファイルまたはディレクトリはありません

私はすべての提案を読んで試したと思います。この郵便受けまったく同じ問題について。

次の方法で新しいキーを生成しようとしています:

gpg --full-generate-key

そしてそれは次のように終わります:

gpg: agent_genkey failed: No such file or directory
Key generation failed: No such file or directory

Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-88-generic x86_64)、ヘッドレス

gpg --version

gpg (GnuPG) 2.2.4
libgcrypt 1.8.1
Home: /home/mark/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
    CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2

gpg-agent を強制終了し、サーバーを複数回再起動しました。

gpgconf --kill gpg-agent

ps aux | grep gpg-agent

mark      1637  0.0  0.0  14428  1052 pts/0    S+   13:55   0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn gpg-agent

.gnupg ディレクトリの権限:

drwx------ 3 mark mark 4.0K Mar 6 14:01 .gnupg

念のため、~/.gnupg を複数回削除し、そのたびに再起動しました。

ls -la ~/.gnupg

total 12K
drwx------  3 mark mark 4.0K Mar  6 14:00 .
drwxr-xr-x 17 mark mark 4.0K Mar  6 14:01 ..
drwx------  2 mark mark 4.0K Mar  6 14:00 private-keys-v1.d

以下の操作を数回繰り返しましたが、結果は同じでした。

gpgキーを生成しようとしています

ls -la ~/.gnupg

total 16K
drwx------  3 mark mark 4.0K Mar  6 14:01 .
drwxr-xr-x 17 mark mark 4.0K Mar  6 14:04 ..
drwx------  2 mark mark 4.0K Mar  6 14:00 private-keys-v1.d
-rw-------  1 mark mark   32 Mar  6 14:01 pubring.kbx

700に変更しpubring.kbxて再度実行しましたが、結果は同じでした(藁にもすがる思い)

ps aux | grep gpg-agent

 mark      1751  0.0  0.0  93316  3348 ?        SLs  14:02   0:00 /usr/bin/gpg-agent --supervised
 mark      1758  0.0  0.0  14428  1084 pts/0    S+   14:06   0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn gpg-agent

私も実行しましたが、straceその出力をどう解読すればよいかわかりません。最後の行は+++ exited with 2 +++

strace -o /tmp/foo gpg --full-generate-key

私は困惑しています。

答え1

gpg --gen-key --homedir /home/NEWUSER/.gnupg --passphrase "PASSWORD" --pinentry-mode loopback

答え2

これによく似たものに遭遇しました...

gpg-agent私の場合、実行していて、「もう一度開始」するために参照していたファイルを削除したためでした。古いものを強制終了することでgpg-agent、問題は解決しました。

答え3

[クロスポスト関連する質問

この問題これは、端末関連のデバイスファイルの所有権が不足していることが理由で、想定される動作と呼ばれていました。これは、たとえば、端末を通常のユーザーとして起動し、コマンドを次gpgのように実行した場合に発生する可能性があります。suまたは経由でsudo

chmod木の中でワイルドなスタントをする代わりに/devこのコメントを使用した簡単な修正方法を示しますtmux。基本的には、セッション内で同じgpgコマンドを実行するだけでtmuxtmux適切なデバイス ファイルの所有権が処理されます。

関連情報