Starting ssh-agent on Windows 10 fails: "unable to start ssh-agent service, error :1058"

Starting ssh-agent on Windows 10 fails: "unable to start ssh-agent service, error :1058"

当我尝试通过输入 Start-Service ssh-agent 通过 PowerShell 在 Windows 10 上启动 ssh-agent(有或没有提升权限)时,我收到错误消息

unable to start ssh-agent service, error :1058

当我通过 Get-Service ssh-agent 检查服务是 运行 是 returns 时,服务已停止。

如何获取 ssh-agent 运行?

我通过 Set-Service ssh-agent -StartupType Manual.

将 ssh-agent 的 StartupType 更改为 Manual 解决了这个问题

然后我可以通过 Start-Service ssh-agentssh-agent.exe.

启动服务

我在 Cygwin 中遇到同样的错误。我必须 在 Cygwin 安装程序中安装 openssh 包

(奇怪的是所有 ssh-* 命令都是有效的,(bash 可以作为程序执行)但是没有安装 openssh 包。)

是的,正如其他人所建议的,这个错误似乎意味着 ssh-agent 已安装但其服务(在 windows)尚未启动。

您可以通过 运行ning 在 Windows PowerShell:

中查看
> Get-Service ssh-agent

然后检查status的输出是不是运行ning.

Status   Name               DisplayName
------   ----               -----------
Stopped  ssh-agent          OpenSSH Authentication Agent

然后检查该服务是否已被运行ning

禁用
> Get-Service ssh-agent | Select StartType

StartType
---------
Disabled

我建议将服务设置为手动启动。这意味着只要你 运行 ssh-agent,它就会启动服务。您可以通过服务 GUI 执行此操作,也可以 运行 在管理员模式下执行以下命令:

 > Get-Service -Name ssh-agent | Set-Service -StartupType Manual

或者,如果您愿意,可以通过 GUI 进行设置。

这恰好发生在我身上,因为我是 运行 非管理员 Powershell 中的命令。 运行 管理员权限解决了问题

在此处添加,如果您遇到此问题并且 运行 start-ssh-agent 在 PowerShell 中它将“切换”到类似 cmd(不是 powershell)的功能,直到您 exit 批处理作业开始通过您之前的命令。 如果不这样做,您将无法再访问 PowerShell 函数,并且会出现类似以下的错误:'Get-Service' is not recognized as an internal or external command, operable program or batch file