合并SCVMM虚拟机的差异磁盘,并删除那些难以删除的Checkpoints(Shapshots)
使用Microsoft Data Protection Manager(DPM)有时会造成虚拟机的动态和固定磁盘变成差异磁盘,这个应该与DPM进行差异备份有关,未知原因造成DPM差异备份后无法复原原来的磁盘类型,并且在Hyper-V Manager中看到非常多树形结构的层层依赖的Checkpoints,这些Checkpoints名称中有Backup字样,这些Checkpoints无法通过Hyper-V Manager删除,也无法通过命令行删除,在文件系统中表现为虚拟机目录中Shapshots文件夹出现很多xml文件。然而Checkpoints的数量有50个上限,如果不删除这些Checkpoints会造成DPM无法继续备份这个虚拟机。那么我们只好手工合并这些差异磁盘,暴力删除这些Checkpoints。以下操作都需要关停虚拟机,并且有一定风险,请操作前备份相关文件。
1. 在SCVMM中先将该差异磁盘从虚拟机中删除,注意一定要选择不要从物理服务器中移除,即保留差异磁盘以备独立进行合并,操作请事先备份所有差异磁盘。

2. 在虚拟机所在物理服务器节点,使用Hyper-V Manager的Edit Disk功能,但是选择Locate Disk时需要特别注意的是必须从最新的那个差异磁盘开始向前合并。如果存在多个差异磁盘,他们之间的关系成树状结构,如果实现合并了前一个,那么后一个将无法找到其父磁盘。可以Merge到父磁盘,如果层次特别多的话,要一次一次操作相当费时费力,或者整体合并保存到其他位置,注意保存的文件名与之前的差异磁盘文件名一致(差异磁盘由1个文件vhdx和多个avhdx组成,这里才差异磁盘文件名指的是最初的那个,即vhdx文件名),以备后用。
如果选中的事差异磁盘,工具会出现Merge选项

完成合并

3. 差异磁盘完成了合并后,可以删除虚拟机目录中的所有差异磁盘(删除前确认有备份),拷贝合并后的固态磁盘或动态磁盘进入虚拟机目录,在SCVMM中为虚拟机添加该磁盘。这时虚拟机已经可以正常使用新的合并后的磁盘启动,但是这些备份用的Checkpoints还在,无论如何都无法删除,经尝试Hyper-V Manage和以下命令都无法删除:Get-VMSnapshot -VMName vmwithcheckpoint.domain.com -ComputerName hyper-v.domain.com | Remove-VMSnapshot。那么接下来使用暴力了。
在Services.msc中将Hyper-V Virtual Machine Management服务停止(在SCVMM管理下,该服务会自动启动,但有个几秒的窗口期),然后直接删除虚拟机目录中的Shapeshots文件夹。启动Hyper-V Virtual Machine Management后,在Hyper-V Manager中虚拟机不见了,SCVMM中虚拟机呈现Missing状态。可以想象Hyper-V Virtual Machine Management找不到虚拟机的Checkpoints文件,无法关联该虚拟机。但是别急,我们可以通过Hyper-V Manager重新导入该虚拟机,导入时选择Restore,所以文件夹都指向原先虚拟机目录,在选择Checkpoints时,注意选择删除Checkpoints。完成后一切都回来了。

注意删除Checkpoints时,一定是建立在Merge差异磁盘,而虚拟机配置也没有太大改动的基础上,简言之每个Checkpoints都会保存与上一个虚拟机状态(配置和磁盘)的差异。至此虚拟机终于恢复正常了,惊心动魄。
合并SCVMM虚拟机的差异磁盘,并删除那些难以删除的Checkpoints(Shapshots)的更多相关文章
- Hyper-v之利用差异磁盘快速创建多个虚拟机
在新建Hyper-v磁盘的时候 有3种选项 其中分别是 固定大小 动态扩展 和 差异(differencing,个人习惯叫 差分) 其中 固定大小是新建的时候 Hyper-v创建一个设置大小值的文件, ...
- kvm上的Linux虚拟机使用virtio磁盘
kvm上的Linux虚拟机使用virtio磁盘 系统:centos6.6 64位 网上的文章比较少,怎麽将Linux虚拟机的磁盘改为使用virtio磁盘 因为centos6或以上系统已经包含了vir ...
- 如何从 Windows 虚拟机分离数据磁盘
当不再需要附加到虚拟机的数据磁盘时,可以轻松地分离它. 这会从虚拟机中删除该磁盘,但不会从存储中删除它. Warning 如果用户分离磁盘,它不会自动删除. 如果订阅了高级存储,则将继续承担该磁盘的存 ...
- Hyper-V:利用差异磁盘安装多个Win2008
签于成本的原因,在学习了解一项新的技术或是产品时,在没有部署到生产环境之中前,大家都会选择在虚拟机来搭建一套实验环境.但如何快速搭建呢?如何节省磁盘空间呢? 说到此都不得不说下Hyper-V的差异磁盘 ...
- 合同主体列表添加两条合同主体,返回合并支付页面,支付总弹"请选择合同主体",删除后,竟然还能支付(改合并支付页面的字段状态)
bug描述: 操作步骤:1.进入"商标续展"产品详情页面,点击立即购买(数量设为2),进入合并订单界面,选择合同主体,点击全部,清空所有合同主体2.新建合同主体保存,设置该合同主体 ...
- ViutualBox虚拟机里添加磁盘
1.首先在VirtualBox界面给虚拟机添加一块磁盘 2. 启动系统,查看当前磁盘空间 Last login: Tue Mar 15 22:24:47 2016 from 192.168.1.100 ...
- kvm linux虚拟机在线扩展磁盘
说明: 1) vmware ESXi虚拟化平台也支持这台在线扩展磁盘功能. 2) kvm虚拟机也支持在线扩展磁盘功能,在线扩展有特定的使用环境,主要用于不能随便停用的生产环境中. 3) 经过测试KVM ...
- vmware vsphere client 虚拟机动态添加磁盘
0x00 事件 为了在虚拟机添加了磁盘之后,不重启机器加载新磁盘. 如上图,添加了一块 10G 的磁盘之后. 在虚拟机中是看不到新添加的磁盘: 0x01 解决 运行如下命令,通过重新扫描 SCSI ( ...
- VM删除快照失败,磁盘空间不足,只是删除了快照名字(全网唯一解决办法)
原创: 删除之前的快照,发现只是把名字删除了, 看着这么多文件也不知道怎么删,一顿百度google也是没找到答案 于是就自己琢磨 因为删除快照的时候,是先把快照删除,然后删除无效的文件 所以先让这个盘 ...
随机推荐
- Spring中的@Transactional
spring中的@Transactional基于动态代理的机制,提供了一种透明的事务管理机制,方便快捷解决在开发中碰到的问题. 一般使用是通过如下代码对方法或接口或类注释: @Transactiona ...
- 12.2 Web窗体--代码片段详解
第12章 使用Web窗体 ※ 除常规HTML元素之外,Web窗体文件还包含另外3种内容:代码片段.可编程HTML元素和控件 ※ 代码隐藏类只应包含特定于单个Web窗体的代码.如果存在多个Web窗体 ...
- IOS-网络(ASIHTTPRequest的使用简介)
使用iOS SDK中的HTTP网络请求API,相当的复杂,调用很繁琐,ASIHTTPRequest就是一个对CFNetwork API进行了封装,并且使用起来非常简单的一套API,用Objective ...
- jquery检测input checked 控件是否被选中的方法
jquery检测input checked 控件是否被选中 js部分 复制代码代码如下: function tongyianniu(){ var gouxuan=$('input[type=check ...
- linux下redis的安装及配置启动
linux下redis的安装及配置启动 标签: redisnosql 2014-10-24 14:04 19732人阅读 评论(0) 收藏 举报 分类: 数据与性能(41) wget http:/ ...
- Xilinx SDK使用教程
本文参考 Xilinx SDK软件内置的教程,打开方法:打开SDK->Help->Cheet Sheets...->Xilinx SDK Tutorials,这里有6篇文档.本文详细 ...
- JDK配置 java跨平台性
jdk 虚拟机jre 依赖包javac 编译java 运行JAVA_HOME 一个存储jdk路径的自定义的变量,方便其他地方配置以后更改方便其他地方调用JAVA_HOME使用%JAVA_HOME%配置 ...
- L200
Last week, I read a story about a 34-year-old British woman who is extremely afraid of metal forks.S ...
- New Concept English Two 19 49
$课文47 嗜酒的鬼魂 481. A public house which was recently bought by Mr.Ian Thompson is up for sale. 伊恩.汤普森先 ...
- VMwarePlayer虚拟机下centos6的静态IP配置
1. 把VMwarePlayer生成的网络适配器 VMware Network Adapter VMnet1 设置成自动获取IP地址. 2.在VMwarePlayer中选择对应的虚拟机,点击edit ...