在Windows 10上执行gpg --generate-key生成GPG密钥时提示无代理运行错误
gpg --generate-key生成GPG密钥时提示无代理运行错误 嘿,我之前在Windows 10上折腾GPG密钥生成时也碰到过一模一样的问题,这本质上是GPG代理(gpg-agent)没正常启动或者终端没正确连接到代理导致的,给你几个亲测有效的解决办法:
办法一:重启GPG Agent服务
这是最直接的修复方式,步骤如下:
- 打开命令提示符(推荐用管理员权限打开,避免权限问题)
- 先杀掉可能挂掉的代理进程:
gpgconf --kill gpg-agent - 重新启动代理:
gpg-agent --daemon - 现在再重新运行密钥生成命令:
gpg --generate-key
办法二:切换终端环境试试
Windows原生的CMD有时候会因为环境变量加载不全,导致GPG找不到代理进程。你可以试试切换到Git Bash或者WSL(Windows Subsystem for Linux)的终端,这些环境对GPG的支持更友好,很多时候换个终端就能解决问题。
办法三:手动指定代理路径(进阶)
如果上面的办法都不行,可以手动设置环境变量让GPG找到代理:
- 先找到你的gpg-agent.exe所在的目录,一般在Git安装目录的
usr/bin下,比如C:\Program Files\Git\usr\bin - 在终端里设置环境变量:
set GPG_AGENT_INFO=/tmp/gpg-agent-socket:0:1 - 再次执行
gpg --generate-key尝试生成密钥
另外,你遇到的完整错误信息是:
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.gpg: can't connect to the gpg-agent: IPC connect call failed
gpg: agent_genkey failed: No agent running
Key generation failed: No agent running
备注:内容来源于stack exchange,提问作者abdullahi maciver

