-1

假设我要设置一台 ubuntu 机器并在其上安装一些服务和软件。进一步假设我要设置另一台库存 ubuntu 机器,这一次没有额外的服务和软件。我知道有一些方法可以创建安装/设置脚本或获取磁盘映像等来构建大量相同的机器,但是如果我要以编程方式在安装之间获取基于文件的差异并迁移所有文件添加/更改/删除/等从完全配置的系统到库存系统,然后我是否会有两个相同的工作系统(即完全实现“一切都是文件”的 linux 哲学),或者新配置的系统是否会处于不一致的状态,因为只是传输文件' 不够?我在相同和不一致的定义中排除了主机名引用等。

我问这个是因为我需要创建一个虚拟机,安装一堆软件,并将一堆内容添加到 redmine 之类的工具中,并且在不久的将来我将不得不将其镜像到另一个 vm 上。我不能简单地获取磁盘映像,因为我从中接收第二个 vm 的源没有给我那种访问权限,并且 vm 会有不同的规格。此时我也不能使用基于安装脚本的方法,因为这将需要大量开销,不会考虑添加的用户内容,而且我不会知道第一个 vm 上将需要的所有内容,直到它我们的环境是稳定的。我在上面询问的方法似乎是一种迂回但合理的方式来完成任务,只要它的假设在理论上是准确的。

谢谢。

4

1 回答 1

1

假设这两个系统在硬件方面基本相同(即相同的网卡、视频卡等),简单地将文件从系统 A 复制到系统 V 通常就足够了。事实上,在我的工作场所,我们已经在许多成功案例中使用了这个过程作为“穷人的 P2V”机制。

如果两个系统具有不同的硬件配置,您可能需要对目标系统进行适当的调整以考虑到这一点。

UUID 挂载

如果你有基于 UUID 的挂载——例如,你/etc/fstab看起来像这样......

UUID=03b4f2f3-aa5a-4e16-9f1c-57820c2d7a72 /boot                   ext4    defaults        1 2

...那么您可能需要调整这些标识符。一个好的解决方案是改用基于标签的安装(当然,还要设置适当的标签)。

网卡

某些发行版将您的网卡的 MAC 地址记录为网络配置的一部分,如果 MAC 地址不同,将拒绝配置您的 NIC。在 RHEL-derivatives 下,只需从配置中删除 MAC 地址即可解决此问题。我认为这在 Ubuntu 下不会成为问题。

于 2012-12-06T01:47:11.413 回答