gpg:密钥服务器接收失败:没有 dirmngr

Hun*_*son 117 debian apt gpg

尝试在我的 Debian Stretch 服务器中接收密钥时,出现此错误:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
Executing: /tmp/apt-key-gpghome.4B7hWtn7Rm/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory
gpg: connecting dirmngr at '/tmp/apt-key-gpghome.4B7hWtn7Rm/S.dirmngr' failed: No such file or directory
gpg: keyserver receive failed: No dirmngr
Run Code Online (Sandbox Code Playgroud)

Hun*_*son 169

安装包dirmngr修复了错误。

user@debian-server:~$ sudo apt-get install dirmngr
Run Code Online (Sandbox Code Playgroud)

重试:

user@debian-server:~$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
Executing: /tmp/apt-key-gpghome.haKuPppywi/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
gpg: key A6A19B38D3D831EF: public key "Xamarin Public Jenkins (auto-signing) <releng@xamarin.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1
Run Code Online (Sandbox Code Playgroud)

  • 在 Debian 9.4 上有同样的问题。安装dirmngr 修复了它。 (5认同)
  • 我发现这是因为我以前从未使用过gpg。`sudo apt-install gpg` 如果尚未安装 - 然后运行 ​​`sudo gpg -k` 创建 dirmgr 目录并重试。 (2认同)

小智 10

我无法让 dirmngr 工作,但您也可以直接使用 apt-key add 导入密钥。GPG 公钥通常列在 repo 的根目录中,例如http://origin-download.mono-project.com/repo/

curl https://origin-download.mono-project.com/repo/xamarin.gpg | sudo apt-key add -
Run Code Online (Sandbox Code Playgroud)

  • 如果dirmngr 尚未运行,则需要运行它。 (2认同)