如何迁移旧的Google Compute Engine磁​​盘?

时间:2014-01-22 11:42:44

标签: linux mount google-compute-engine

我在欧洲使用Google Compute Engine,维护窗口只是hit us。 “自动迁移”不起作用,因此我们所有的服务器都处于脱机状态。在从备份恢复期间,我们发现缺少一些文件。

我有一个从debian-7-wheezy-v20130617图像创建的持久启动盘,其中包含我想要访问的数据。

我想出了两种可能的解决方案来访问数据:

  1. 使用旧的引导盘创建新VM。听起来很简单,但谷歌改变了一些东西,虚拟机无法启动。

  2. 使用新映像创建新VM并附加旧的引导盘。听起来很简单,但使用旧版safe_format_and_mount无法识别旧磁盘。

  3. 有关如何从磁盘访问数据的任何想法? migration doc并没有真正帮助,似乎他们假设你总是拥有旧磁盘仍在运行旧磁盘。

2 个答案:

答案 0 :(得分:1)

由于您的磁盘是在迁移到当前v1 API之前创建的,因此在您可以将磁盘重新连接到新实例之前,必须upgrade the disk才能使用嵌入式内核。

答案 1 :(得分:0)

最后想出了如何访问新VM中旧磁盘上的数据。

  1. 使用当前操作系统映像创建新VM。
  2. 另外将旧引导磁盘附加为只读
  3. 在VM中检查附加ls -la /dev/sd*的磁盘。 “sda”是引导,其他人附加。
  4.   

    brw-rw --- T 1 root disk 8,0 Jan 22 11:18 / dev / sda
      brw-rw --- T 1根盘8,1月22日11:18 / dev / sda1
      brw-rw --- T 1 root disk 8,16 Jan 22 11:18 / dev / sdb
      brw-rw --- T 1 root disk 8,17 Jan 22 11:18 / dev / sdb1
      brw-rw --- T 1 root disk 8,32 Jan 22 11:49 / dev / sdc
      brw-rw --- T 1 root disk 8,33 Jan 22 11:49 / dev / sdc1

    4创建挂载点mkdir /mnt/disk_b并挂载磁盘分区mount /dev/sdb1 /mnt/disk_b

      

    mount:块设备/ dev / sdb1被写保护,以只读方式挂载

    5检查您的数据ls -la /mnt/disk_b