使用虚拟机运行Linux图形桌面时,经常因为一个网页或者编译某个程序就导致虚拟机卡死,甚至影响主机使用。明明主机内存有8G,分配给虚拟机的内存也不少,为什么就这么卡顿。打开主机上的任务管理器查看发现磁盘占用百分百,原来是磁盘读写的锅。但是我就觉得特别好奇,为什么在虚拟机中打开一个网页会导致长时间的磁盘操作占有百分百,甚至把主机都卡死。
 
在查了许多资料后,有建议换成SSD的,有建议装双系统的,有建议用远程桌面的等等,尝试过几乎所有解决方案(除了换SSD和双系统),这些方案几乎都没有什么效果。最后综合了各方面的资料我发现导致磁盘I/O操作的主要原因有以下几点:
 
1.VMware会在使用的时候统计内存中的数据的使用情况,然后将不常用的一些内存数据存入本地磁盘从而释放出空间节省内存的使用。这个对于内存较小的机子可能有一些帮助,但是内存交换也会带来大量的I/O操作从而导致性能下降
 
2.VMware从10版本开始,在运行每个虚拟机的时候回默认在硬盘上为相应的虚拟机生成一个内存实时镜像文件用于存储虚拟机内存的改变,这就导致了虚拟机在使用的时候不断的在对硬盘发生I/O操作,这个是及其耗费时间,从而使得虚拟机小小的操作却导致了长时间的卡机甚至是死机的情况的发生。对于使用SSD的电脑还好,对于大多数在机械硬盘上进行这些操作的用户来说简直是灾难。不过幸好解决的办法也比较简单。
 
解决办法
 
针对第一点可以点击 虚拟机/设置/选项/高级 将“禁用内存页面修整”勾选起来禁止这一部分的内存交换 
 
针对第二种情况,将实时内存镜像读写默认关闭,打开C:\ProgramData\VMware\VMware Workstation下的settings.ini文件,在文件中加入下面这一条命令:
 
mainMem.useNamedFile = "FALSE"
 

建议大家在修改前先保存一份原先的设定,然后再进行修改。如果遇到权限问题可以右键点击‘属性’,然后选择‘安全’一栏

选择Everyone一栏,然后点击下面的编辑

将‘允许’那一列中的完全控制权限赋予每个用户,然后保存修改后退出即可,修改完settings.ini文件后再将其修改回原先的设置即可。这下磁盘占用过大的问题就可以得到解决了。

VMware虚拟机磁盘操作占用过高问题的更多相关文章

  1. 关于VMware虚拟机磁盘收缩的几种方法

    VMware虚拟机在使用过程中,随着软件和数据的增多,虚拟磁盘占用的硬盘空间会逐渐增大,但删除数据后,却不会自动减小占用的物理硬盘空间 而是继续占用相应大小.如果需要解决上面的问题,就需要收缩wmwa ...

  2. VMware虚拟机磁盘收缩的几种方法

    原文地址:http://www.cnblogs.com/5201351/p/4290401.html 根据下面转载的内容,我在VMware 12.0.0 build-2985596的ubuntu上做试 ...

  3. VMware 虚拟机磁盘

    创建磁盘时,会进行两个操作:分配空间.置零 1.厚置备延迟置零: 默认的创建格式,创建磁盘时,直接从磁盘分配空间,但对磁盘保留数据不 置零.所以当有I/O操作时,只需要做置零的操作. 磁盘性能较好,时 ...

  4. vmware虚拟机磁盘挂载

    执行mount命令时找不到介质或者mount:no medium found的解决办法 使用vmware时,在虚拟机设置里,设置CD/DVD为系统镜像,挂载时,有时会有找不到介质或者no medium ...

  5. Extended VM Disk In VirtualBox or VMware (虚拟机磁盘扩容)

    First, Clean VM all snapshot, and poweroff your VM. vmdk: vmware-vdiskmanager -x 16GB myDisk.vmdk vd ...

  6. VMware虚拟机Mac OS X无法调整扩展硬盘大小,更新xcode时出现磁盘空间不足

    使用VMware虚拟机搭建的MacOSX,安装xcode时出现磁盘空间不足的错误. 因为很多朋友在初次安装MacOSX的时候都默认选择40G的磁盘大小,结果用了没两天之后就发现磁盘不够用了. 这时,百 ...

  7. vmware虚拟机挂载Windows磁盘的两种方法

    第一种 vmware虚拟机通过ntfs-3g挂接windows盘 1.共享windows盘虚拟机设置——>添加硬盘——>选择IDE——>使用物理磁盘——>选择本地盘(单分区)— ...

  8. VMware vSphere Client下增加虚拟机磁盘空间的方法

    随着系统运维时间的增长,磁盘就日益的损耗,如果遇到虚拟机报磁盘空间不足怎么办?还好,我们可以通过磁盘阵列增加磁盘空间,然后扩容到虚拟机中去. 对于linux虚拟机磁盘扩容的方案有两种,一种就是原有的实 ...

  9. VMware 虚拟机(linux)增加根目录磁盘空间

    VMware 虚拟机(linux)增加根目录磁盘空间     今天查看学校的监控报修系统,不能访问了!!!系统运行很慢,用top命令查看发现内存使用率90%,用"df -h ”查看“/”目录 ...

随机推荐

  1. vuex中store保存的数据,刷新页面会清空

    用vuex,项目中需要记录一些状态,来判断页面是否为登录状态和页面是否可被编辑,此时用到了vuex中的store来存储一个状态. //首先 安装vuex npm install vuex --save ...

  2. docker--在centos镜像安装mysql

    一.安装centos镜像 1.拉取最新版本centos镜像(拉取centos7 则使用centos:7即可) docker pull centos:lasted 2.查看已有镜像 docker ima ...

  3. 用DOM方式解析XML

    一.用DOM方式解析XML 此例子节点结构如下: 1.获取book节点属性 (1).如果不知道节点的属性,通过 NamedNodeMap attrs = book.getAttributes(); 来 ...

  4. HDU 3586.Information Disturbing 树形dp 叶子和根不联通的最小代价

    Information Disturbing Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/ ...

  5. HDU 2196.Computer 树形dp 树的直径

    Computer Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  6. 关于Https

    http://blog.csdn.net/wfdtxz/article/details/8678982 https://www.tuicool.com/articles/feYfE3I https:/ ...

  7. 七、PyQT5控件——QSlider,QSpinBox

    一.Qslider QSlider是一个滑动条,可以设置成水平或垂直放置.最常用的方法允许用户在某一范围内互动该滑块,并将滑块的位置转换成一个整数值(int类型),这种方式可以在某一个范围内平顺的变动 ...

  8. Programming for Everyone !

    Hello Internet ! This blog is to store my algorithm practices. Since Evernote code blocks do not sho ...

  9. Git和Eclipse的使用、上传、部署

    https://www.jianshu.com/p/812717c740a2 https://blog.csdn.net/lynn_Kun/article/details/73740400 https ...

  10. 学以致用三十-----pycharm创建django项目忘记添加app

    记忆力有时候真的不是很好.因此有些操作步骤还是记录下来好了. pycharm版本-----2018.2.4 创建django项目 file-----newproject----- 创建的时候,appl ...