绝非复制粘贴,亲测可用。
1、使用hyperv自带的虚拟磁盘编辑器,压缩(compact)并不能将linux中已删除文件的空间归还,导致VHDX越来越大。
2、方法
博主目前只测试过centos6.5系统压缩,对/home 目录进行磁盘回收。
回收前需要对已删除未回收空间进行回收,使用到 zerofree,使用前需要将 磁盘挂载为只读
若直接
mount /dev/mapper/vg_livedvd-lv_home -o remount,ro
则会报错,umount: /home: device is busy
使用网上的 mount -f /home强制卸载,或者 fuser -kvm /home等命令强行结束进程无效。
故博主想起来有一个开机自动挂载分区的文件 /etc/fstab,修改 /etc/fstab 将需要压缩的分区在开机时就挂载为 ro,如图
随后重启,开机使用root用户登录
man zerofree #测试一下是否安装该功能
#若没有安装 则 yum install zerofree安装即可,若源不可用可参考博主之前的换源方法博客
zerofree /dev/mapper/vg_livedvd-lv_home
等待约1小时,完成后关机,使用管理员启动powershell执行如下命令
diskpart
进入磁盘管理
select vdisk file="E:\Hyper-V\centos65_copy2\centos65_c2\centos65.vhdx"
compact vdisk
# 不需要网上说的detach vdisk
回收前大约占用225GB左右,今天清理完文件发现不变小,在网上试了无数办法,才找到这个办法,留作笔记,需要的可以参考一下方案。