当我尝试通过 PowerShell(无论是否具有提升权限)在 Windows 10 上启动 ssh-agent 时,输入
Start-Service ssh-agent
我收到错误
无法启动 ssh-agent 服务,错误:1058
当我通过
Get-Service ssh-agent
检查服务正在运行时,返回服务已停止。
如何让 ssh-agent 运行?
是的,正如其他人所建议的,此错误似乎意味着 ssh-agent 已安装,但其服务(在 Windows 上)尚未启动。
您可以通过在 Windows PowerShell 中运行来检查这一点:
> Get-Service ssh-agent
然后检查status is not running的输出。
Status Name DisplayName
------ ---- -----------
Stopped ssh-agent OpenSSH Authentication Agent
然后通过运行检查该服务是否已被禁用
> Get-Service ssh-agent | Select StartType
StartType
---------
Disabled
我建议将服务设置为手动启动。这意味着只要您运行 ssh-agent,它就会启动该服务。您可以通过服务 GUI 来执行此操作,也可以在 管理模式 下运行命令:
> Get-Service -Name ssh-agent | Set-Service -StartupType Manual
或者,如果您愿意,也可以通过 GUI 进行设置。
我通过
Manual
将 ssh-agent 的 StartupType 更改为 Set-Service ssh-agent -StartupType Manual
解决了这个问题。
然后我就可以通过
Start-Service ssh-agent
或仅 ssh-agent.exe
启动服务。
我在 Cygwin 中遇到同样的错误。我必须在 Cygwin 安装程序中安装 openssh 软件包。 (奇怪的是,所有
ssh-*
命令都是有效的,(bash可以作为程序执行),但没有安装openssh包。)
1 => 以管理员身份打开 Window Powershell 并写入
2 => Get-Service ssh-agent //(你会发现状态已停止)
3 => 现在在 Powershell 中写入
4 => 设置服务 ssh-agent -StartupType 手动
您会发现状态正在运行..希望有助于解决问题。