我只是创建新实例,现在想要远程我的谷歌计算引擎。当我这样做时,我有这样的错误。
D:\>gcutil --service_version="service_version_name" --project="project_name" ssh-- zone="zone_name" "instance_name"
WARNING: You don't have an ssh key for Google Compute Engine. Creating one now..
.
WARNING: Could not generate compute ssh key: There was a problem running ssh-key
gen: [Error 2] The system cannot find the file specified.
为什么要求指定文件?如何解决问题?
由于
答案 0 :(得分:4)
您的系统上没有安装ssh-keygen
,因此gcutil
无法生成SSH密钥对。
有关安装说明,请参阅this answer(请注意,这也会引入git,但这是在Windows上获取ssh-keygen
的方法。)
请注意gcutil
尝试生成SSH密钥对的原因:
您需要SSH密钥对才能连接到实例。在没有密钥对的情况下启动实例很可能会使其无法使用,因此gcutil
代理正在尝试为您生成新的密钥对。
这是使用ssh-keygen
实用程序完成的。
答案 1 :(得分:0)
gcutil
在Windows上使用起来不是很容易。
我建议使用puttygen和putty,请关注instructions from Google。
答案 2 :(得分:0)
从cygwin
开始运行时会成功。我建议这是因为ssh-keygen正试图找到/
。
答案 3 :(得分:0)
此问题已在上周修复。请从https://developers.google.com/cloud/sdk/
重新安装您的Cloud SDK请注意,不再需要Cygwin(我们有本机Windows安装程序)
答案 4 :(得分:0)
尝试
gcloud compute ssh" instanse"
在Windows上,如果你是autuly authly,自动打开一个putty窗口
答案 5 :(得分:0)
这里的技巧是使用-C(注释)参数指定您的GCE用户ID。 Google似乎在今年早些时候引入了此更改。
如果拥有GCE实例的Google用户是myname@gmail.com(您将用作登录用户ID),则使用(例如)生成密钥对
ssh-keygen -b521 -t ecdsa -C myname -f mykeypair
将mykeypair.pub粘贴到实例的公共密钥列表中时,应该看到“ myname”作为密钥的用户名出现。
设置此功能将使您可以从命令行使用ssh,scp等。