克隆 VMware 虚拟机时,如何防止 MAC 地址和 UUID 冲突?

Ste*_*ski 11 networking virtualization linux vmware-fusion vmware-esxi

我在 VMware Fusion(适用于 Mac)和 VMware ESXi/vSphere 上都遇到了以下问题。很多人都熟悉这个问题,VMware 知识库中对此进行了描述:“网络在克隆的 Linux 虚拟机中不起作用 (2002767)”

  1. 创建 CentOS 虚拟机。
    • 这是一个具有最少软件集和正常运行的网络堆栈的准系统 VM。这个想法是我们采用最小的虚拟机,克隆它并在以后添加更多软件。
  2. 克隆那个虚拟机
  3. VMware Fusion 或 vCenter 将为克隆的 VM 上的网络接口分配一个新的 MAC 地址。
  4. Linux 不知道这个新的 MAC 地址,因此网络无法正常工作。该文件/etc/sysconfig/network-scripts/ifcfg-ethN具有第一台机器上接口的 MAC 地址。
  5. 要解决此问题,我需要找到新 VM 的 MAC 地址,编辑ifcfg-ethN此 MAC 并将其添加到HWADDR=字段中。我不能简单地将 MAC 剪切并粘贴到字段中,因此这可能是一项容易出错的任务,尤其是当我忘记用笔和纸写下 MAC 时。
  6. (加分)在新VM上,经常出现eth0、eth1等显示顺序错误。解决这个问题涉及一个神秘的舞蹈/etc/udev/rules.d

我可以这样做,但是当我只是想启动一个新的 VM 来测试某些东西时,它很容易出错并且有点痛苦。

有没有办法简化这个手动过程?克隆新机器时,如何解决MAC地址问题?

Sha*_*den 14

由于设备持久性的东西只是阻碍了这些虚拟机,把它撕掉:

  • 从文件中完全删除HWADDRUUIDifcfg,以及
  • /etc/udev/rules.d/70-persistent-net.rules克隆前删除

这应该让具有新 MAC 地址的 eth0ifcfg-eth0在初始启动时实际使用。

  • 在前 10 个谷歌搜索结果中,这是一个有效的结果!注意:从`/etc/sysconfig/network-scripts/ifcfg-eth0`中删除`HWADDR`和`UUID`行 (2认同)