是否可以远程克隆正在运行的/实时操作系统?

是否可以远程克隆正在运行的/实时操作系统?

我与远程服务器有一个活跃的 OpenVPN/OpenSSH 连接。是否可以克隆远程操作系统,将其保存到本地文件(例如,使用dd)并在 VirtualBox 或类似的东西中本地运行它?

答案1

假设您已经停止了所有像 MySQL 这样不断更新文件的服务/守护进程,您可以执行以下操作:

  • 使用最小配置将相同的操作系统安装到虚拟机中
  • 在源操作系统上:sudo tar -cf /image.tar /bin /boot /etc /lib /lib64 /root /usr /var
  • 将此 tar 复制到您的 VM
  • 将 tar 文件解压到/new
  • 现在这部分有点棘手。安装 mc (午夜指挥官),在 root/sudo 下运行它,创建/old,将以上目录移动到它(除了 /boot),然后移动所有目录(再次除了 /new/boot) 从/new/

至于/boot。这取决于您的 UEFI/MBR 配置。如果是 UEFI,请替换 中的所有文件/boot/efi/EFI/yourdistro,然后/new/boot/{initrd*|vmlinuz*}移至/boot.

这一切都要求您完全了解自己在做什么,并且知道 EUFI/grub2 是如何工作的。如果您不认为自己是强大的 Linux 用户/IT 专业人员,请忘记这个答案。

答案2

我已经使用嵌入式产品中使用的 Raspberry Pi 完成了此操作。我以只读方式重新安装了主文件系统,并通过网络复制了 SD 卡块设备。我怀疑使用在克隆时主动写入磁盘的系统是否会获得良好的结果 - 只读挂载或文件系统快照可能是必不可少的。

答案3

我从来没有这样做过,但我会通过设置文件系统来攻击它,这样我就可以在它处于活动状态时拍摄它的快照(使用 btrfs 或通过设置 lvm),然后使用实时系统以您想要的方式打包该快照喜欢,并通过网络将其发送到您的计算机。

我希望这有帮助!

相关内容