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

我換成pubring.kbx700再跑,結果還是一樣(抓著救命稻草)

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命令時,可能會發生這種情況通過susudo.

不再在樹上做瘋狂的chmod特技/dev這則評論示範了使用的快速修復tmux。基本上只需在會話gpg中執行相同的命令tmuxtmux即可處理正確的裝置檔案所有權。

相關內容