无法连接到 Compute Engine CentOS 虚拟机

Cannot connect to Compute Engine CentOS Virtual Machine

我是虚拟机和 CLI 的新手,所以请多多包涵。

我在 Compute Engine 上有一个 CentOS 6.5 运行。

我 运行 yum 更新(没有创建以前磁盘的快照 - 是的,我是个白痴)而不是我无法使用 ip 地址连接到机器。

我尝试了以下步骤。

尝试通过 Filezilla 连接 - 没有成功。 尝试通过 Putty - 没有用 尝试通过 CE 控制台 给出的浏览器选项 - 没有用。 我什至尝试创建快照并使用快照启动另一个 VM - 没有用。

如果有人知道如何从以前的磁盘中取出文件和文件夹,我可以启动一个新的 VM,然后运行再次传输所有内容。

我没有最新的数据库,这很重要。

请帮忙! 谢谢 沃伦

恢复的方法是在不删除磁盘的情况下删除您的 VM,然后创建另一个具有自己的启动磁盘的 VM,附加并装载原始磁盘,然后恢复所有数据你需要的。

首先要做的事情是:在 VM 实例页面上,单击当前 运行 该磁盘的实例名称,然后取消选中框 "Delete boot disk when instance is deleted"。然后删除实例。

现在,使用自己的启动磁盘创建一个新实例。要将此新磁盘与原始启动磁盘区分开来:

  • 为新磁盘使用不同的 OS(或 OS 的版本),例如,如果使用 Ubuntu,请尝试不同的版本或使用 Debian;如果使用 RHEL,请尝试 CentOS,或 反之亦然
  • 看看哪个安装在 / — 这应该是新磁盘

将原始磁盘装载为只读并恢复您需要的任何信息。备份数据后,您可以使用读写权限重新安装它并尝试修复它(但请先备份数据!)。

感谢 Misha 指引我正确的方向,我终于解决了这个问题。

以下步骤适用于遇到相同问题的任何人。

问题:

在使用 yum update 更新 Centos 服务器时,我无法连接回服务器。 我尝试了所有可能的组合,但没有运气。这似乎是一个已知问题,因为在 Compute Engine 网站上有一些关于此的 material。

解法:

我按照 Misha 的建议进行了操作。我用自己的启动磁盘启动了另一个 VM,然后附加了具有读写访问权限的原始磁盘。

注意:我无法以只读方式挂载磁盘。

命令是

mkdir /mnt/sdb1

挂载/dev/sdb1/mnt/sdb1

安装虚拟机后,我将文件从 sdb1 磁盘中的 html 文件夹复制到 sda1(新启动磁盘)中的 html 文件夹。

数据库有点挑战性。

我尝试了很多次,但是将文件从 /dev/sdb1/var/lib/mysql 复制到新磁盘 mysql文件夹不工作。

我找到了一些教程,但没有任何帮助。

最后我从 /dev/sdb1/var/lib/mysql 中下载了文件并将它们放在我的本地 windows mysql 安装在数据文件夹中。

请记住,您必须下载所有内容,包括 ib_logfile0、ib_logfile1 和 ibdata1,包括包含 *.frm 文件的文件夹。

然后我打开 localhost/phpmyadmin 瞧……文件就在那里。

剩下的很简单...导出 SQL 脚本并将其上传回服务器。

我花了大约 12 个小时才弄明白。

再次感谢米莎。