当前位置首页 > Ubuntu知识

VMwareUbuntu虚拟机挂起休眠,唤醒后连不上网的问题解决方案-JurongMagpie

阅读次数:395 次  来源:admin  发布时间:

VMware Ubuntu虚拟机挂起休眠,唤醒后连不上网的问题解决方案 该文章可以提供一种解决VMware挂起失败后Ubuntu虚拟机无法联网问题的思路 运行环境:

主机操作系统:Windows 11 家庭中文版(64位)

虚拟机版本:VMware® Workstation 16 Pro 16.1.0

虚拟机操作系统:Ubuntu 20.04.3 LTS 64位

虚拟机网络适配器:NAT模式

问题起因:

昨晚在用Ubuntu虚拟机的时候,中途因为想用主机查点儿资料同时觉得电脑负载较大风扇太吵,就想先把虚拟机挂起来,过一会儿再用。结果挂起的时候,VMware弹出错误提示:

VMware Workstation 不可恢复错误: (vcpu-0),Exception 0xc0000005 (access violation) has occurred.

传输 (VMDB)错误 -14: Pipe connection has been broken。

等再次打开Ubuntu的时候,就连不上网了。打开ubuntu内置firefox后,点击网页,firefox显示无法连接服务器,无法上网。于是,苦逼的纠错之路就开始了:

纠错过程:

最初的时候,因为firefox报错显示是无法连接服务器,于是我认为是DNS服务器连接出了问题。按照网上搜到的办法,我只需把resolv.conf文件中的nameserver换成Google提供的8.8.8.8 [1],问题即可解决。尝试后,依然断网;将DNS地址换成百度提供的180.76.76.76,再次尝试,依然无法上网,遂放弃修改DNS服务器的想法。

之后,我改变纠错思路,开始考虑问题是否是出在VMware和Windows上面。一番必应后(拒绝无良竞价排名,从你我做起),发现上面所提到的vcpu-0报错是由Hyper-v与Vmware冲突引起的。众所周知,Win的Hyper-v与VMware的虚拟化技术冲突问题出现了不是一天两天了。之前在Win10系统中本已解决的冲突问题,如今在Win11系统中再次出现;而解决方案也很简单:把Hyper-v关掉就好了。于是我就以管理员身份,尝试从PowerShell关闭Hyper-v [2]:

bcdedit /set hypervisorlaunchtype off

然并卵,关闭Hyper-v后重启虚拟机,发现依然上不去网。于是思路二也就被否掉了。之后我还参考[3], 去设置interfaces文件,然而依然没用。此时自信心跌落谷底,差点儿就打算删掉该虚拟机,重新开一个用。

解决方案:

最后让我重焕自信的是[4]中提供的方案。简单地说,该方案分为三步:

1. 将虚拟机网络适配器改为主机模式;

2. 在Ubuntu指令窗口中依次输入以下指令:

sudo service network-manager stop
sudo rm /var/lib/NetworkManager/NetworkManager.state 
sudo service network-manager start

3. 将网络适配器换回NAT/桥接/其他模式

然后再打开firefox,发现网络恢复正常。

改进空间:

在纠错过程中,我提到了从PowerShell端关闭Hyper-v以解决虚拟机挂起后报错的问题;虽然该方法能成功地将vcpu-0那条报错纠正,然而传输 (VMDB)错误依然存在。这样的后果就是我的虚拟机依然无法正常挂起,每次挂起时就会报告VMDB错误,然后强行关机Ubuntu。当然,目前来说虚拟机挂起这个功能对我可有可无,该问题可以暂先拖一下,日后解决;然而,目前中文互联网上有关解决该VMDB错误的教程很少。因此说,如果有知道的同学,还请在评论区留言,分享该问题的解决思路。

参考链接:

[1]. https://www.cnblogs.com/lxjshuju/p/7133599.html

[2]. https://blog.csdn.net/m0_43406494/article/details/121065440

[3]. https://blog.csdn.net/CaoMei_HuaCha/article/details/84846845

[4]. https://www.cnblogs.com/jlf0103/p/9501892.html

上一篇:faster-rcnn在ubuntu16.04环境下的超级详细的配置(转)
下一篇:linux常用命令