我正在运行一个 CENTOS 服务器,我想制作它的相同副本(所有软件、用户),就像镜像目的的孪生服务器一样。我该怎么做呢?
答案1
虽然 dd 会将一个已安装的驱动器复制到另一个驱动器,但副本将不一致文件系统不断变化,如果您使用的是日志文件系统,情况更是如此。当驱动器是静态的,即只读时,使用 dd 效果最好。大多数情况下,这不是一个选项,但如果您确实将其设置为只读,这将正常工作。
还有其他工具可以执行此克隆功能。但最简单的方法是使用 LVM 的镜像功能。 需要注意的是,您需要在 LVM 上已经拥有现有的文件系统。 使用 LVM 镜像,你可以制作文件系统的热副本,当你破坏镜像以获取第二个驱动器时,文件系统映像将处于一致状态,因为所有记录的更改都将一致地发送。除了启动镜像过程并在原始副本完全复制后停止它之外,几乎不需要做任何工作。
如果出于某种原因您不想使用镜像功能,您可以随时创建文件系统的快照并将只读快照复制到另一个驱动器。虽然这不像镜像那样自动,而且有点混乱(额外的步骤),但它可以正常工作。
最后,您可以随时尝试使用 rsync 来实现这一点。这听起来像是一种奇怪的方法,但我曾用它成功地将 400 英里外的服务器复制到本地驱动器。问题是我必须手动更改文件/etc/fstab
(分区不同),但除此之外,它启动正常。
剩下的就是一个痛点:让驱动器可启动。使用 dd 将复制引导加载程序(因为它是逐块复制),但如果使用 LVM 或 rsync 方法,则需要重新安装引导加载程序。幸运的是,这并不太难,并且可以轻松地对当前(原始?)根文件系统以外的驱动器进行操作。
答案2
我认为“dd”可以满足您的要求——请查看下面的文章。
[编辑]
如果你正在寻找的是一个系统模板,其中多个系统以相同的方式设置和配置,而不是一个精确的副本,那么皮匠可能是您正在寻找的:
Cobbler 是一款 Linux 安装服务器,可用于快速设置网络安装环境。它将许多相关的 Linux 任务整合在一起并自动执行,因此您在推出新系统时,甚至在某些情况下更改现有系统时,无需在大量不同的命令和应用程序之间来回切换。
答案3
我读到热拷贝以 Linux 格式发布几个问题。应该可以解决问题。
答案4
更多细节将有助于...
如果这是一个面向公众的生产系统,我建议进行全新安装,并弄清楚如何手动克隆它。原因是您将了解系统的工作原理,并且一旦掌握了这些知识,就可能设计出更好的故障转移。例如,如果这是一个带有数据库后端的 Web 应用程序,那么安装两个系统并不能真正为您提供良好的镜像,您需要研究各种数据库复制。
我知道的其他主要选项是:
- 使用 dd 之类的命令对分区进行映像处理
- 重新安装 CentOS,然后使用 -a 选项将旧安装同步到新安装。这实际上非常有效,您需要排除 /proc 目录以及其他几个目录