GCE:无法登录,VM来宾环境已过时,仅支持已弃用的' sshKeys'元数据项

时间:2017-10-18 08:04:49

标签: wordpress ssh ssh-keys google-compute-engine

我不能再进入我的Google Compute Engine(GCE)Wordpress实例了。 它是在一个月前我上次尝试时工作的。 我在Chrome浏览器窗口中使用Google内置的SSH客户端。 昨天我试过得到以下消息:

  

VM guest虚拟机环境已过时,仅支持已弃用   ' sshKeys'元数据项。请按照此处的步骤进行更新。

这里的步骤"链接导航到https://cloud.google.com/compute/docs/images/configuring-imported-images#install_guest_environment,这似乎对我没什么帮助。

我不知道我可能做出任何改变。

我该如何解决这个问题?

6 个答案:

答案 0 :(得分:8)

看起来您的实例磁盘已满,因此无法在临时目录中创建SSH密钥。您可以执行以下操作:

  1. 停止您的实例并等待它关闭
  2. 点击您的实例正在使用的磁盘,然后选择"编辑"在顶部
  3. 输入更大的磁盘大小,然后保存
  4. 返回您的实例并重新启动
  5. 您现在应该可以通过SSH连接。当你在那里时,检查一下你的硬盘是什么让你可以防止这种情况再次发生(也许一个流氓程序打印出太多的日志等)。

答案 1 :(得分:1)

如果您在 Debian 8或9 上看到这一点,最可能的原因是允许对该实例进行SSH访问的google-compute-engine.*个包已被删除apt-get autoremove

如果您有与计算机的开放SSH连接或可以使用gcloud之类的工具,则运行apt-get update && sudo apt-get install gce-compute-image-packages应解决此问题。

如果您不再拥有任何SSH访问权限,可以使用a procedure available on the GCP docs site来恢复它。

答案 2 :(得分:0)

我为此创建了bug report here

答案 3 :(得分:0)

可能会有点迟,但你可以

1)停止虚拟机

2)编辑并启用串行控制台

3)使用串行连接登录并更新VM

答案 4 :(得分:0)

最近几天,我遇到类似的问题,后来我发现我的主目录的权限愚弄了我,作为一个懒骨头,我chmod 777~ 在这之后,我不能通过我的终端ssh,甚至不能通过浏览器ssh,只得到'VM访客环境已过时,只支持已弃用的'sshKeys'元数据项,请按照此处的步骤进行更新'。听起来你必须将755设置为你的家庭目录,而不仅仅是关注700 .ssh或600 authorized_keys。

答案 5 :(得分:0)

我在创建FreeBSD VM之后遇到了类似的问题,gcloud ssh无效,但我很幸运能够将浏览器窗口ssh用于我的VM。然后我手动将google_compute-engine公钥添加到.ssh / authorized_keys,现在它可以正常工作,我可以使用gcloud ssh进行连接。但不确定这是否是一种更好/更安全的方式。