【亲测有效】VMware虚拟机压缩回收磁盘空间-toolbox空间缩减解决VM占用多余空间问题

使用vmware-toolbox节省磁盘空间

Linux虚拟机里打开终端(Term)切入超级用户,执行以下命令

#搜索查看磁盘挂载点
sudo /usr/bin/vmware-toolbox-cmd disk list

#对/分区所在的虚拟硬盘进行清理,/表示你的磁盘挂载点,可以从上一步list列表中取值,不清楚的用户可以直接执行
sudo /usr/bin/vmware-toolbox-cmd disk wipe /
sudo /usr/bin/vmware-toolbox-cmd disk shrink /
当进度条跑完之后,则会断开ssh连接,此时本地的终端则会自动开始收缩磁盘了

可以使用以下脚本来收缩所有的挂载磁盘

  1. LOG_FILE=~/vmdiskshrink.log

  2. DISK_LIST=$(sudo /usr/bin/vmware-toolbox-cmd disk list)

  3. echo -e “will shrink disk: \n############\n${DISK_LIST}\n############” | tee ${LOG_FILE}

  4. for mydisk in ${DISK_LIST}

  5. if [ ! -d ${mydisk} ] ;then

  6. read -t 10 -p “shrink ${mydisk} ?<Y/n>” myselect

  7. if [ “${myselect,,}” = “n” ] ;then

  8. echo “start wipe ${mydisk}” | tee -a ${LOG_FILE}

  9. sudo /usr/bin/vmware-toolbox-cmd disk wipe ${mydisk}

  10. echo “start shrink ${mydisk}” | tee -a ${LOG_FILE}

  11. sudo /usr/bin/vmware-toolbox-cmd disk shrink ${mydisk}

 

推荐的方法
虚拟机软件上使用自带的compact可视化工具操作,按下面的步骤操作即可。
1 在linux系统里,把虚拟磁盘没用的空间全部填成zero,可以使用如下命令:
dd if=/dev/zero of=/zero.file bs=2M   #也可以加入count参数,其值可为剩余空间大小/2M
rm -rf /zero.file
2 关闭虚拟机、选中虚拟机,右键–>settings,选择磁盘后,选择Utilities下的compact,则会立即对磁盘进行收缩

© 版权声明
THE END
喜欢就支持一下吧
点赞28 分享