如何压缩Linux VMware虚拟机磁盘空间

作者:技术拾光时间:2026-07-25 09:05:08浏览:480

VMware 里运行 Linux 虚拟机确实方便,但磁盘占用只增不减的问题让人头疼。与 Windows 虚拟机不同,Linux 虚拟机无法直接点击“清理磁盘”和“压缩磁盘”来释放空间。下面介绍如何手动为 Linux 虚拟机进行彻底的磁盘清理,让缩水的磁盘文件恢复原样。 清理前查看磁盘占用 先看看清理

VMware 里运行 Linux 虚拟机确实方便,但磁盘占用只增不减的问题让人头疼。与 Windows 虚拟机不同,Linux 虚拟机无法直接点击“清理磁盘”和“压缩磁盘”来释放空间。下面介绍如何手动为 Linux 虚拟机进行彻底的磁盘清理,让缩水的磁盘文件恢复原样。

清理前查看磁盘占用

先看看清理前的状况:一个虚拟机文件占用了 17GB 空间。使用 Xshell(或其他 SSH 工具)登录到这台 Linux 虚拟机中,准备开始操作。

如何压缩Linux VMware虚拟机磁盘空间

如何压缩Linux VMware虚拟机磁盘空间

第一步:在 Linux 虚拟机中写入零字节文件

在终端中依次执行两个命令。首先用 dd if=/dev/zero of=/0bits bs=20971520 向磁盘中写入零字节文件,接着用 sudo rm /0bits 删除该文件。这一步的作用是标记所有未使用的磁盘块,让 VMware 知道哪些空间可以被回收。执行完成后即可关闭虚拟机。

复制内容到剪贴板

  1. dd

    if

    =/dev/zero of=/0bits bs=20971520

  2. sudo rm /0bits

如何压缩Linux VMware虚拟机磁盘空间

如何压缩Linux VMware虚拟机磁盘空间

第二步:在 Windows 宿主机中执行压缩命令

回到 Windows 宿主机,打开命令提示符。先切换到 VMware 的安装目录(通常为 C:\Program Files (x86)\VMware\VMware Workstation 或类似路径)。然后执行磁盘清理命令:

vmware-vdiskmanager -k "E:\myvmware\RHEL6x86-64-cognos\Red Hat Enterprise Linux 6-cl1.vmdk"

注意将引号内的路径替换为实际虚拟机 .vmdk 文件所在位置。其中 -k 参数表示压缩磁盘。

如何压缩Linux VMware虚拟机磁盘空间

如何压缩Linux VMware虚拟机磁盘空间

第三步:等待压缩完成并验证效果

耐心等待。VMware 会重新整理磁盘文件,将之前写零占用的空间真正释放。根据磁盘大小和性能不同,这个过程可能需要几分钟到十几分钟。完成后,可以观察到 .vmdk 文件大小明显缩小。

如何压缩Linux VMware虚拟机磁盘空间

如何压缩Linux VMware虚拟机磁盘空间

进阶技巧:将操作脚本化

如果觉得每次手动执行两次操作(Linux 端写零、Windows 端压缩)比较繁琐,可以将这两个步骤分别写成脚本——Linux 端编写 shell 脚本,Windows 端编写批处理或 PowerShell 脚本。以后只需一键执行即可。核心思路不变,掌握后能节省不少磁盘空间。