我正在try 在Linux(Ubuntu12)上运行NuGet.我有Mono 3.0.6(源代码编译).

$ mono --runtime=v4.0.30319 .nuget/NuGet.exe update -self
Checking for updates from https://nuget.org/api/v2/.
Error getting response stream (Write: The authentication or decryption has failed.): SendFailure

我推测,该错误是由于某些证书(最有可能是nuget.org)不受信任.这是blog post has more details美元.

所以我跑了:

$ mozroots --import --sync
$ certmgr -ssl https://go.microsoft.com
$ certmgr -ssl https://nugetgallery.blob.core.windows.net
$ certmgr -ssl https://nuget.org

... 没用.

NuGet版本是2.3.0.0(尽管我最初使用的一些旧版本也不起作用).

如何修复此错误?

推荐答案

我可以通过将证书导入机器存储而不是用户存储来实现这一点,这是默认设置:

$ sudo mozroots --import --machine --sync
$ sudo certmgr -ssl -m https://go.microsoft.com
$ sudo certmgr -ssl -m https://nugetgallery.blob.core.windows.net
$ sudo certmgr -ssl -m https://nuget.org

在我这么做之前——甚至在完成了最初的基于用户存储的命令之后——我验证了the tlstest.exe tool失败了,在导入到机器存储之后,它成功了.

当然,对我来说最重要的是,那就开始工作吧.:)

Linux相关问答推荐

awk:try 将时间戳字符串转换为unix纪元时间

GO:当使用NewManager调用创建cgroup时,权限被拒绝

如何将netcdf文件列表中的特定变量添加到不同的文件中?

加载ELF64头文件为什么会导致分段错误?

使用sed命令将记录中的字符串替换为DD-MMM-YYYY日期格式

awk 打印除最后一列以外的所有内容 + 最后一列

8 个半小时范围的 Crontab 表达式

awk 不打印所需的 df 输出

如何使用 awk 重新排列列?

如何在linux中将2个不同大小的图像(边框,实际图像)合并为1个

Bash - 如何根据 names.txt 重命名目录中的文件

使用带有 gnome-keyring 的 Git 凭证助手作为 Sudo 时出错

ld-linux.so.2 和 linux-gate.so.1 是什么?

用于判断进程是否正在运行并对结果采取行动的 Linux 脚本

sed: -i 不能与 Mac OS X 上的标准输入一起使用

GLIBCXX 版本

Linux 配置/制作,--prefix?

GNU Octave 方法对矩阵中的每个项目进行操作.octave arrayfun(...)示例

Shell 脚本, echo 消息后在同一行读取

当将信号量减为零的进程崩溃时,如何恢复信号量?