Vmware 一些小问题的解决办法
2015-11-26 11:08
260 查看
Vmware 一些小问题的解决办法
1、配置文件只读,无法修改。因为想把物理磁盘挂接的虚拟机中,就在配置文件中添加硬盘选择物理磁盘。结果启动时提示物理磁盘正在使用,造成虚拟机无法启动。糟糕的是,虚拟机的配置界面也无法编辑了,后挂接的物理磁盘也删不掉了。怎么办呢,启动不了,数据就丢失了。
添加 移除的按钮都是灰的。
经过一番查找研究,发现是配置文件的访问权限的问题。解决办法:
在 配置文件如 xp.vmx的属性的安全选项中把完全的权限赋给users用户组。然后就可以编辑了。
2、父盘 子盘 内容ID不一致
因为无法启动,我就想把虚拟机的磁盘文件挂接到别的虚拟机上把数据读出来,但是这个虚拟机有父盘子盘链,我没注意,不小心把父盘挂接到别的虚拟机上了,结果数据是以前的数据,并没有我想要的最近的数据。然后我就退出重新挂最后的子盘。结果无法挂接,显示:父盘 子盘 内容ID不一致 “父虚拟磁盘已被修改。父虚拟磁盘的内容 ID 与子虚拟磁盘中相应的父内容 ID 不匹配”怎么办,数据还是读不出来。
经过查找研究,原来vmware的磁盘是以父子盘链的形式存在的,子盘内容是父盘的内容+数据的变化量。在父子盘的配置文件中对这个关系是有明确的标识的:
如图:
...Cl1.vmdk 是父盘的配置文件,...cl1-000001.vmdk是第一个子盘的配置文件。
...cl1.000002.vmdk 是 第二个子盘的配置文件,是...cl1.000001.vmdk的子盘,实际是cl1.vmdk的孙子盘。
分别打开这三个配置文件,可以看到各自的CID和parent CID,如图:
那么,如果第2个文件的parentcid和第一个文件的cid不一致的话,就会出现前面提到的“父虚拟磁盘已被修改。父虚拟磁盘的内容 ID 与子虚拟磁盘中相应的父内容 ID 不匹配”,但实际我们知道,内容是一致的,我们并没有修改过。所以只要把它们改成一致就行了,用记事本或notepad++都行。我是把父盘的cid改成跟子盘的parentcid一致。改完后可以挂接了,数据也读出来了。
3 配置文件损坏怎么办
因为配置文件内容无法在配置界面上修改,我就想自己在配置文件中直接修改。结果改完更不好用。后来在网上搜到用日志文件恢复的办法:
在虚拟机目录下,有如下文件,如图:
实际是配置文件的日志文件,后缀名隐藏了。
Vmware*的文件中保存了每次配置修改之前的数据。我在vmware-2.log中找到了最早的好用的配置文件。
本方法仅适用.vmk文件损坏而其他文件完好无损的情况。
举例说明:虚拟机名为XP,虚拟机目录为E:\XP\,配置文件名即为XP.vmk(除目录名为自己创建为,其余文件名为VM虚拟机自动创建)
1,删除XP.vmk(注意不要删除错了,系统默认是不显示扩展名的,显示扩展名的方法自己百度一下吧)
2,用记事本打开E:\XP\vmware.log
3,找到“Jan 24 23:13:15.438: vmx| DICT --- CONFIGURATION”段(前面是日期和时间,不要对号入座)
4,从下边一行开始复制到“Jan 24 23:13:15.440: vmx| DICT --- USER DEFAULTS”上边一行结束(不用复制 ‘---CONFIG„„’和‘ ---USER DEFA„.’两行)
5,新建记事本,粘贴
6,删除前边的日期时间标志
例如:“Jan 24 23:13:15.438: vmx| DICT config.version = 8”
删除前边标志后仅留
config.version = “8”
全部照此更改,改完后复制到虚拟机根目录下。如果提示配置文件只读之类的,把这个完全访问的权限赋给users用户组。
4000
1、配置文件只读,无法修改。因为想把物理磁盘挂接的虚拟机中,就在配置文件中添加硬盘选择物理磁盘。结果启动时提示物理磁盘正在使用,造成虚拟机无法启动。糟糕的是,虚拟机的配置界面也无法编辑了,后挂接的物理磁盘也删不掉了。怎么办呢,启动不了,数据就丢失了。
添加 移除的按钮都是灰的。
经过一番查找研究,发现是配置文件的访问权限的问题。解决办法:
在 配置文件如 xp.vmx的属性的安全选项中把完全的权限赋给users用户组。然后就可以编辑了。
2、父盘 子盘 内容ID不一致
因为无法启动,我就想把虚拟机的磁盘文件挂接到别的虚拟机上把数据读出来,但是这个虚拟机有父盘子盘链,我没注意,不小心把父盘挂接到别的虚拟机上了,结果数据是以前的数据,并没有我想要的最近的数据。然后我就退出重新挂最后的子盘。结果无法挂接,显示:父盘 子盘 内容ID不一致 “父虚拟磁盘已被修改。父虚拟磁盘的内容 ID 与子虚拟磁盘中相应的父内容 ID 不匹配”怎么办,数据还是读不出来。
经过查找研究,原来vmware的磁盘是以父子盘链的形式存在的,子盘内容是父盘的内容+数据的变化量。在父子盘的配置文件中对这个关系是有明确的标识的:
如图:
...Cl1.vmdk 是父盘的配置文件,...cl1-000001.vmdk是第一个子盘的配置文件。
...cl1.000002.vmdk 是 第二个子盘的配置文件,是...cl1.000001.vmdk的子盘,实际是cl1.vmdk的孙子盘。
分别打开这三个配置文件,可以看到各自的CID和parent CID,如图:
那么,如果第2个文件的parentcid和第一个文件的cid不一致的话,就会出现前面提到的“父虚拟磁盘已被修改。父虚拟磁盘的内容 ID 与子虚拟磁盘中相应的父内容 ID 不匹配”,但实际我们知道,内容是一致的,我们并没有修改过。所以只要把它们改成一致就行了,用记事本或notepad++都行。我是把父盘的cid改成跟子盘的parentcid一致。改完后可以挂接了,数据也读出来了。
3 配置文件损坏怎么办
因为配置文件内容无法在配置界面上修改,我就想自己在配置文件中直接修改。结果改完更不好用。后来在网上搜到用日志文件恢复的办法:
在虚拟机目录下,有如下文件,如图:
实际是配置文件的日志文件,后缀名隐藏了。
Vmware*的文件中保存了每次配置修改之前的数据。我在vmware-2.log中找到了最早的好用的配置文件。
本方法仅适用.vmk文件损坏而其他文件完好无损的情况。
举例说明:虚拟机名为XP,虚拟机目录为E:\XP\,配置文件名即为XP.vmk(除目录名为自己创建为,其余文件名为VM虚拟机自动创建)
1,删除XP.vmk(注意不要删除错了,系统默认是不显示扩展名的,显示扩展名的方法自己百度一下吧)
2,用记事本打开E:\XP\vmware.log
3,找到“Jan 24 23:13:15.438: vmx| DICT --- CONFIGURATION”段(前面是日期和时间,不要对号入座)
4,从下边一行开始复制到“Jan 24 23:13:15.440: vmx| DICT --- USER DEFAULTS”上边一行结束(不用复制 ‘---CONFIG„„’和‘ ---USER DEFA„.’两行)
5,新建记事本,粘贴
6,删除前边的日期时间标志
例如:“Jan 24 23:13:15.438: vmx| DICT config.version = 8”
删除前边标志后仅留
config.version = “8”
全部照此更改,改完后复制到虚拟机根目录下。如果提示配置文件只读之类的,把这个完全访问的权限赋给users用户组。
4000
相关文章推荐
- 把Chrome OS安装在VMWare下及Chrome OS的关键特性和一些截图
- 企业云 2.0:VMware 眼中的企业 IT 的未来
- VMware Workstation 5.5.3 Build 34685 汉化补丁
- Vmware虚拟机的安装及配置方法
- nasm实现的用vmware运行自做的linux启动盘的引导代码
- Install ESX Server 3.5/3i onto ESX Server安装方法
- 【笔记】CentOS
- [教程] VMware Workstation 9安装MAC OS 10.8全程图解
- vmware 打开虚拟机时提示“该虚拟机似乎正在被使用”解决
- VMware NAT端口映射 外网可以访问内网虚拟机
- OS X Mavericks 10.9.2 Retail VMware Image
- VMware tools的用途及安装
- win7 + 虚拟机 + Mac
- 强行关闭VMware虚拟机
- 转载备忘:允许通过SSH登陆VMware ESX Server
- VMware Cookbook 读书笔记
- VMware Cookbook 读书笔(二)
- FreeBSD 5.1安装VMware全部过程
- 解决VMware快照故障的方法
- VMware命令行工具 - vmkfstools