如何减少你的虚拟机的大小(macOS Update)

525 阅读1分钟

最近,我也在运行macOS的虚拟化,以测试各种应用程序。在大量使用之后,同样的问题出现了:.vmdk在我相当小的256GB SSD上使用了太多的空间。目前大约是70GB。

这个过程与我在Windows和Linux上所做的类似,即写一个空文件,在最后被删除,然后使用命令行工具压缩.vmdk并回收空间(这个例子是针对VMWare Fusion的)。

不再多说了。

第一步

用0x00填满所有的空白空间

$ cat /dev/zero > zeroed_empy_space; rm zeroed_empy_space

如果你想知道/dev/zero 是做什么的:

/dev/zero 是Unix-like操作系统中的一个特殊文件,它可以提供尽可能多的空字符(ASCII NUL,0x00),因为从它那里可以读到。其中一个典型的用途是为初始化数据存储提供一个字符流。

第二步

VMWare Fusion默认安装在/Applications/VMware Fusion.app ,所以你只需要运行:

$ cd ‘/Applications/VMware Fusion.app/Contents/Library/‘ 
$ vmware-vdiskmanager -k your_vm_name.vmdk

并等待它完成--请注意,你需要磁盘上至少有.vmdk文件大小的可用空间,否则这个操作会失败。

结果

原始vmdk大小:70GB
在清零可用空间和清理后。40GB