偶尔需要用一下win虚拟机,但是发现io时常满载,虚拟磁盘放在机械硬盘时几乎不能用。大概改了改配置,io性能有了明显提升,以下是我的配置,不一定是最优选项。
目录
- 安装系统
- 下载`virtio-win.iso`
- 新建虚拟机
- 安装win
- win中的配置
- 关闭swap
- 修改磁盘策略
- 关闭磁盘整理
- 其他策略
- 宿主机配置
- 重启虚拟机
- 更新
安装系统
下载virtio-win.iso
从这里 https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio
挑版本号最新的那个即可。
新建虚拟机
虚拟磁盘选择raw
格式,总线选择virtio
,缓存默认选择none
,同时另外添加一个光驱,两光驱各挂载win安装盘与virtio-win.iso
安装win
过程中会找不到virtio
模式的硬盘,此时选择下方的加载驱动程序
,从virtio-win.iso
安装驱动,而后即可正常安装。
win中的配置
关闭swap
在我的电脑中右键属性
->高级系统设置
。然后依次按照下图,一直选到最后的无分页文件
,并点击其后的设置。
修改磁盘策略
关闭磁盘整理
右键C盘属性,依次按下图将已计划的优化
关掉
其他策略
回到磁盘属性中,如下图,选中磁盘驱动器,点击下方属性。
然后单击改变设置:
最后将策略下的选项改成这样:
宿主机配置
如果你和我一样使用了btrfs
之类带COW
的fs,则使用sudo chattr +C
提前将虚拟磁盘文件所在文件夹的COW
关掉,一旦文件新建并有了数据之后,将无法修改该属性。
重启虚拟机
更新
经过多种优化之后,感觉还是比不上virtualbox
的IO。是kvm
qemu
的版本比较低,还是说本身virtualbox
对win
做了特殊优化?
不论如何,暂时的结论是使用virtualbox
更适合做win
虚拟机