我不能再进入我的Google Compute Engine(GCE)Wordpress实例了。 它是在一个月前我上次尝试时工作的。 我在Chrome浏览器窗口中使用Google内置的SSH客户端。 昨天我试过得到以下消息:
VM guest虚拟机环境已过时,仅支持已弃用 ' sshKeys'元数据项。请按照此处的步骤进行更新。
这里的步骤"链接导航到https://cloud.google.com/compute/docs/images/configuring-imported-images#install_guest_environment,这似乎对我没什么帮助。
我不知道我可能做出任何改变。
我该如何解决这个问题?
答案 0 :(得分:8)
看起来您的实例磁盘已满,因此无法在临时目录中创建SSH密钥。您可以执行以下操作:
您现在应该可以通过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进行连接。但不确定这是否是一种更好/更安全的方式。