Chinaunix首页 | 论坛 | 博客
  • 博客访问: 620386
  • 博文数量: 168
  • 博客积分: 1053
  • 博客等级: 少尉
  • 技术积分: 1187
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-30 17:20
个人简介

公众号【嵌入式er笔记】持续记录和分享C/C++、Linux、ARM、Android、IoT等技术相关知识,以及职场、生活经验和感悟。

文章分类

全部博文(168)

分类:

2013-07-09 17:50:06

当我们利用尝试拷贝或移动一个位于datastore里面的虚拟机时,系统会提示我们:
A.I_Moved it;
B.I_Copied it;
同时我们能看到如下消息:
“msg.uid.altered:This virtual machine may have been moved or copied”,那么,这一切究竟是什么意思呢??


首先,我们应该了解一下,上面消息中所说的UUID是个什么东西?
UUID的全称是:universally unique identifier。UUID是一个128位的数值,用它来区别每个虚拟机之间的差异。

在虚拟机被开启或移动时,UUID会自动生成,UUDI的值是基于物理主机并且保存在*.vmx文件里面的。UUID值存储在vmx文件的2个位置:
A.uuid.bios;
B.uuid.location(这是虚拟机的当前路径);

比如:uuid.bios="56 4d 5e 58 66 f5 2d 04-03 31 0a bd 6f a7 19 88"

UUID同时还存储与虚拟机的BIOS里面。当虚拟机开启或被移动时,UUID的uuid.location值会随着虚拟机存储位置变化而相应的变化。一旦虚拟机的位置发生变化,那么uuid.location值也会发生相应的变化,这时,就会提示我们最开始描述的信息。


那么UUID为什么那么重要呢?如果UUID相同会发生什么事儿呢?其实,最关键的一个还是UUID的最后几位是和虚拟机的MAC地址有关的,如果不发生变更,在我们克隆虚拟机时,可能导致UUID相同,那么,MAC地址会发生冲突,那么,网络就会存在问题。

那么,究竟该选者“I Moved it”还是“I Copied it”呢?其实,这个问题,我们通过分别执行一下之后对比vmx文件里的内容就知道了: I Moved it:由于是移动这个虚拟机,那么只有uuid.location发生变化,MAC地址是没有变化的:



I Copied it:

由于是拷贝虚拟机,那么uuid.bios和uuid.location都会发生变化,这是MAC地址就会发生变化:

阅读(1116) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~