克隆硬盘 - 远程


1

我有两个服务器,A和B.我想将服务器A克隆到B. A运行Linux,它们都是远程的,我没有物理访问它们

解决这个问题的最佳方法是什么?


什么OS B计算机正在运行?
喷射

Answers:


0

我相信rsync就是这里的解决方案。我不确定在rsync会话期间是否所有文件都可写,但是......

你有没有想过在服务器A上制作分区的dd克隆并将其传输到服务器B?这听起来有点疯狂,但也许作为最后的手段?


0

对于磁盘映像,我喜欢clonezilla,但您需要物理访问才能从磁盘启动以使其正常工作。老实说,我认为你不能做一个完全熄灭的远程全系统拷贝。rsync只会让你到目前为止。如果两者都已安装完整系统,并且它们在其他方面完全相同,那么您可以在主机B上安装与主机A上相同的应用程序。然后,只需将必要的配置文件从A复制到B即可。必须要复制一切


0

克隆远程Linux机器

bash脚本backup-images-1.0.sh自动执行克隆远程Linux机器磁盘的过程。它使用dd命令sshgzip命令来复制和压缩远程磁盘,并通过SSH连接将它们即时发送到本地磁盘。

使用由Radovan Brezula编写的backup-images-1.0.sh将远程磁盘克隆到本地磁盘的示例,他编写了backup-images-1.0.sh。

使用“将本地磁盘克隆到远程磁盘”的示例 dd

dd if=/path/to/disk/image ibs=4096 conv=notrunc,noerror | (ssh 132.183.12.128 dd of=/remote-archive/test/remote-archive-test.img obs=4096) 
  • ibs=4096 一次读取最多4096个字节

  • conv=notrunc,noerror 不要截断输出文件并在读取错误后继续

  • obs=4096 一次写入4096个字节


0

至少有三种不同的方法可以做到这一点。

1个脚本设置。

此选项在具有适当文档的大型公司中非常有用,并且可能会扩展到使用PXE引导和木偶或类似设置的设置。

基本上,您重复用于在服务器B上配置服务器A的相同步骤。

如果您的设置足够大(例如,您运行100台服务器并且想要启动服务器101),这非常有效.PXE启动,告诉您的puppet配置它需要是$ type的服务器并在一小时后回来。完成!)。

建立了很多工作,但事后完善。并且所有设置工作可能不值得复制一次设置。

2个文件系统副本。

您可以将所有文件从服务器A复制到服务器B,同时保留其权限和用户。rsync可能是最好的工具。

为此,您希望使用类似的设置准备目标服务器(例如,复制分区设置),然后rsync大多数文件。这里棘手的部分是你不想rsync一些文件(例如skip / proc和/ dev),你需要有东西来接收服务器B上的rsync文件。

对于最后一个,您可能希望从不同的磁盘启动服务器B,或使用ILO / DRAC / ..从桌面上的liveCD iso映像启动,使其磁盘裸露并准备好接收rsync文件。

3复制磁盘。

这与复制文件系统不同。它更容易,可能更快,但原始磁盘访问(例如使用dd)忽略所有文件系统更改。这意味着您确实不想复制正在运行的文件系统。

为了帮助您更轻松地理解这一点,请对图书进 这本书有一个索引和四个故事。本书的其余部分是空白的,这也很好地在书籍索引中指出。

现在我们开始复制。我们复制索引。我们复制故事1,我们复制...
**暂时举行,让我在这里添加一个新故事并更改索引**
我们复制停止2,3,4和5 ......

我们现在有一本aq书,其中有一个索引显示四个故事(不是五个,因为我们在写故事5之前复制了它,还有五个故事)......一本腐败的书。

如果您使用原始磁盘访问来复制正在运行的系统,则会发生类似的事情。因此,在使用原始磁盘副本之前,请确保操作系统处于脱机状态。要么启动不同的东西(例如从第二个磁盘,从本地CD,或通过网络(PXE,DRAC,......),然后复制。

有关如何执行此操作的详细信息已在[su]上发布。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.