主题
KVM 虚拟机清理记录 — szb122032/33/34/35/36/37
操作时间
2026-09-05 (CST)
操作目的
清空(删除定义 + 删除磁盘)szb122032 ~ szb122037 共 6 台虚拟机,回收磁盘空间。
清理前状态
- 6 台 VM 均为
shut off,非 UEFI 启动(无 NVRAM)。 - VM XML 中的磁盘路径为
/kvm/lib/libvirt/szb/(该目录已不存在,为历史遗留路径)。 - 实际磁盘文件位于
/mnt/xfs/szb/szb/(qcow2 + cloud-init ISO),共约 90 GiB。
操作步骤
1. 删除虚拟机定义
bash
for vm in szb122032 szb122033 szb122034 szb122035 szb122036 szb122037; do
virsh undefine --remove-all-storage "$vm"
done因 XML 中的磁盘路径已失效,libvirt 提示 “not managed by libvirt. Remove it manually.”, 域定义本身均已成功删除。
2. 手动删除实际磁盘文件
bash
rm -f /mnt/xfs/szb/szb/szb12203{2,3,4,5,6,7}.qcow2 \
/mnt/xfs/szb/szb/szb12203{2,3,4,5,6,7}-cloud-init.iso
virsh pool-refresh szb清理后状态
virsh list --all中已无 szb122032 ~ szb122037。/mnt/xfs/szb/szb/已清空,存储池szb中无卷。/mnt/xfs使用量由 584G 降至 495G,回收约 89 GiB。
备注
default网络中 6 台 VM 的静态 DHCP 租约条目(192.168.122.32~37)已保留; 如后续用sz-rocky9-vm/create-vms-szb.sh重建 VM,脚本会自动去重并重建这些条目。 如需彻底清除,可执行:bashfor i in 32 33 34 35 36 37; do mac=$(printf '52:54:00:7a:%02x:%02x' $i $i) virsh net-update default delete ip-dhcp-host \ "<host mac='$mac' name='szb122$i' ip='192.168.122.$i'/>" --live --config done