无法载入虚拟机系统

简介:

今天不小心点到自己的脚本,然后自动关机了。那时正在运行虚拟机软件就这样我的虚拟机在没有正常退出的情况下产生以下问题!然后通过自己的百度+分析,终于把问题解决了。乌拉拉!

====================================原因分析===================================

(1)在已经运行虚拟机的S系统情况下,再点击一个新的虚拟机同样载入S系统。这个时候的特征是在任务管理会发现两个vmware.exe(图一),然后产生的警告如图二,错误提示如下(图三)。


ps:vmware.exe和vmware-vmx.exe两个重要的进程。其中vmware-vmx.exe是主程序,虚拟机在这个进程下运行;VMware.exe是外壳程序,负责显示vmware-vmx.exe中运行的虚拟系统并解释传送各种命令和操作,是我们最常用的 VMware用户界面,该程序可重入即同时打开多个。


因为VMware Workstation是可重入的,为了避免同一个虚拟系统同时被多个VMware.exe打开操作,造成错误,所以每个VMware打开相应的虚拟机选项卡时都会先检查该虚拟机根目录下是否有*.vmx.lck的文件夹并验证其中的文件,如果该文果没有相应的合法文件,就会在该虚拟机根目录下生成*.vmx.lck文件夹,并在该文件夹下生成一个包含uuid的*.lck文件,打开虚拟机选项卡,并从主程序接收显示信息。


  这个*.lck文件可以用记事本编辑。里面是uuid={一串字母数字},uuid是通用唯一识别码 (Universally Unique Identifier),它的特点就是唯一性。为的是同时只有一个vmware.exe能接受主程序的显示,并对虚拟机操作。lck是lock的缩写,即对请求资源的锁定。


  VMware 虚拟机在运行时会在相应的虚拟机目录下生成三个文件*.vmx.lck,*.vmdk.lck,*.vmem.lck文件夹,里面包含以*.lck命名的文件。 其中的*.vmx.lck是伴随vmware.exe中选项卡的打开时生成的;另外两个是关于虚拟磁盘和内存的使用的,它们伴随着虚拟系统的运行而产生。如果关闭VMware.exe让虚拟机在后台运行,*.vmx.lck文件夹会消失另外两个则不会。

文件中包含合法生成的uuid(通用唯一识别码)

000435450.png

那么将无法打开该虚拟机的选项卡(图二)。假如我们点击"Take Ownership"之后会出现以下提示(图三):

000450914.png(图一)


000448244.png(图二)


000452382.png(图三)


===================================解决方案===========================================

这个时候你打开子系统所在的目录,你会发现一些后缀名为lck的文件夹(图四)。删除%虚拟机名字%.vmx.lck文件夹或者其中的文件即可。

注意:%虚拟机名字%为你的虚拟机名称,比如在图四则应该删除Windows XP Professional.vmx.lck即可,之后再启动虚拟机就行了。


000428382.png图四


(2)Unable to open kernel device "\\.\Global\vmx86": 系统找不到指定的文件. Did you reboot after installing VMware Workstation


错误提示:如图五,但是图五这种情况得细分。


000431324.png图五


[1]不能找到我们虚拟机主进程vmware-vmx.exe(图六),导致我们无法使用虚拟机。


000433681.png图六


这个的特征很容易判断:我们可以尝试启动一下其他的子系统,假如都无法正常启动!则可以确定使我们的虚拟机出问题了。并且在系统进程你将无法看见我们的虚拟机的主进程vmware-vmx.exe(图七)。而正常的应该是图八,可以看见vmware-vmx.exe和vmware.exe。


000437950.png(图七)


000455249.png(图八)


===================================解决方案========================================

这时候不需要重新安装我们的虚拟机,只需要我们找到我们安装虚拟机的安装包。双击进入图九,然后选择图九中的修复(repair)即可。修复成功后如图十,图十一是成功后的载入界面。

000441513.png图九

000443673.png图十

000446256.png图十一

[2]其他情况的解决,

解决方法一:

对虚拟机相对应的.vmx文件进行编辑修改。(图十二)

找到这一行: vmci0.present = "TRUE"(图十三)

将 TRUE 改为 FALSE

或者 直接将这行删除。

保存此虚拟机的.vmx文件。

重新运行虚拟机。OK。


004630891.png图十二


004632964.png图十三


解决方法二:(不过话说这个我肿么找不到呢?英文版没有么?)

在vm软件界面上,编辑虚拟机设置。

在 虚拟机设置 -> 选项 -> 客户机隔离 ->VM通信接口(VMCI)

把启用VMCI的钩去掉。

点击确定保存。

重新运行虚拟机。OK。

解决方法三:

在命令行处输入命令“net start vmci”,执行。

重新运行虚拟机。OK。

执行成功后VM可以启动,但是虚拟机回报错“vmnet0:系统找不到指定的文件”。

解决方案为:

一(已试成功)

命令行执行“NET START VMNETUSERIF”,“NET START VMNETBRIDGE”。

二(待试)

安全模式下修改[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\intelppm]

将"Start"=dword:00000001 改成"Start"=dword:00000004

在出现 Unable to open kernel device "\\.\Global\vmx86 "后关闭VMWARE

运行 net start vmx86










本文转自 qq414207614 51CTO博客,原文链接:http://blog.51cto.com/skytina/1337931,如需转载请自行联系原作者
目录
相关文章
|
7月前
|
Ubuntu Windows
【Ubuntu/Arm】Ubuntu 系统如何链接有线网络(非虚拟机)?
【Ubuntu/Arm】Ubuntu 系统如何链接有线网络(非虚拟机)?
|
7月前
|
Ubuntu Linux 网络安全
【ubuntu】MobaXtem远程登录ubuntu系统(或虚拟机)
【ubuntu】MobaXtem远程登录ubuntu系统(或虚拟机)
|
7月前
|
Linux Windows
虚拟机添加新硬盘之linux系统篇
虚拟机添加新硬盘之linux系统篇
224 1
|
7月前
|
关系型数据库 MySQL Linux
一次虚拟机centos7系统崩溃恢复记录
一次虚拟机centos7系统崩溃恢复记录
430 0
|
3月前
|
虚拟化
虚拟机系统Win7与主机之间不能实现拖放的问题及解决方法
虚拟机系统Win7与主机之间不能实现拖放的问题及解决方法
70 0
|
4月前
|
Linux KVM 数据库
虚拟机数据恢复—Linux系统下误删除KVM虚拟机的数据恢复案例
虚拟机数据恢复环境: Linux操作系统服务器,EXT4文件系统。服务器中有数台KVM虚拟机。 虚拟机故障: KVM虚拟机被删除,需要恢复raw格式的磁盘文件。
虚拟机数据恢复—Linux系统下误删除KVM虚拟机的数据恢复案例
|
4月前
|
存储 NoSQL Java
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
该博客文章展示了如何在Linux虚拟机上使用Redis和Jedis客户端实现手机验证码的验证功能,包括验证码的生成、存储、验证以及限制每天发送次数的逻辑,并提供了测试结果截图。
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
|
4月前
|
Linux
虚拟机安装Linux系统的网络配置
该博客文章提供了解决虚拟机中Linux系统网络问题的多种方法,包括重置网络服务、修改网络配置文件、使用不同网络模式等,以确保虚拟机能够成功连接到网络。
虚拟机安装Linux系统的网络配置
|
4月前
|
Ubuntu
【ubuntu系统】在虚拟机内安装Ubuntu
【ubuntu系统】在虚拟机内安装Ubuntu
52 0
|
5月前
|
安全 Linux 数据安全/隐私保护
入职必会-开发环境搭建33-VMWare虚拟机安装Linux系统
CentOS(Community ENTerprise Operating System)是一个基于Linux的开源操作系统,它是由社区志愿者团队从Red Hat Enterprise Linux(RHEL)源代码重新编译而成。CentOS致力于提供一个稳定、可靠且免费的企业级Linux发行版,适用于服务器和工作站环境。
134 0