如何克隆远程Linux系统并在本地制作镜像文件?

如何克隆远程Linux系统并在本地制作镜像文件?

这个问题困扰了我一段时间。

我有一台装有 CentOS 的远程计算机,只能通过ssh.我需要克隆该系统拥有的所有内容,并将其复制到我的本地virtualbox。这是所做的:

  1. dd按照以下中提到的步骤/命令 ( )克隆系统本文。该命令如下所示:

    dd if=/dev/xvda of=xvda.raw
    
  2. 将转储的文件传输到我的本地,读取后转换为VDI格式这一页

    VBoxManage convertdd xvda.raw xvda.vdi --format VDI
    
  3. 创建一个虚拟机xvda.vdi

VM 无法启动,显示黑屏并提示“按任意键继续...”。

更新: 请参阅下面来自远程计算机的转储。远程计算机中似乎不存在启动分区。如果是这样,我如何在本地虚拟机中创建启动分区并/dev/xvda从远程计算机克隆所有其他分区(我猜这就是全部)?

[tom@ip-10-203-0-000 ~]$ sudo fdisk -l
Disk /dev/xvda: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00057cbb

    Device Boot      Start         End      Blocks   Id  System
/dev/xvda1               1        3917    31456256   83  Linux

[tom@ip-10-203-0-000 ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1       30G  9.2G   19G  33% /
tmpfs           1.8G     0  1.8G   0% /dev/shm

答案1

您可能缺少引导加载程序。您可能会想选择 withdd if=/dev/sda而不是/dev/sda1.也许您需要使用一些stop参数来防止转储超出引导加载程序和第一个分区。


更新:

阅读您的df输出,我猜测您的源实例类似于 Xen 半虚拟化 domU,这意味着无法保证您的实例具有引导加载程序甚至内核。我敢打赌 als /dev/xvd*只会显示分区而不显示设备。也许你甚至有一个/proc/xen目录?

假设后者是正确的,那么您应该研究 Xen PV 到 VirtualBox 的转换。这可能需要在转储分区之前安装内核和引导加载程序。确保在破坏任何内容之前备份您的实例,...

另外:您最初的帖子讲述了转储sda1,您的编辑显示了xvda1,...您确定要转储正确的分区吗?

相关内容