Windows 数据恢复-动态盘显示无效-阿里云开发者社区

开发者社区> 云服务技术课堂> 正文

Windows 数据恢复-动态盘显示无效

简介: 很多客户在使用磁盘时选择了动态盘,又对这块动态盘创建了快照,之后在数据恢复或其他场景下用快照创建了新的磁盘,将新磁盘挂载到相同实例时,发现新磁盘显示无效。

作者:棋玉

背景:

很多客户在使用磁盘时选择了动态盘,又对这块动态盘创建了快照,之后在数据恢复或其他场景下用快照创建了新的磁盘,将新磁盘挂载到相同实例时,发现新磁盘显示无效。
image.png

问题原因:

动态盘通过LDM进行管理,对于mbr分区,LDM保存在磁盘的最后1MB(如下图所示),这1MB空间保存了磁盘信息,分区信息以及磁盘id,group id等,由于源磁盘和新磁盘最后1MB空间是一样的,两块盘的ldm数据库完全相同,对应的磁盘id,group id也是完全相同,导致系统只能识别一块磁盘。
image.png

可以通过微软的LDMDump工具查看LDM database的具体信息:
https://docs.microsoft.com/en-us/sysinternals/downloads/ldmdump
image.png

解决方案:

将新磁盘在无损数据的前提下从动态盘转换到基本盘:重新配置分区表并将system id从dynamic 改为ntfs。需要借助diskprobe工具 (包含在Windows XP Service Pack 2 Support Tools)https://www.microsoft.com/en-us/download/details.aspx?id=18546
Drives找到对应的磁盘,选择Set Active(以drive2 为例)
image.png

首先读取sector0的信息,view 以partition table展示,其中relative 表示起始扇区,total sectors 表示总扇区数。从截图看到起始扇区是63,总扇区数是41940929,总扇区数=结束扇区-开始扇区+1,因此结束扇区是41940991。
image.png

image.png

之后判断起始扇区和结束扇区是否正确,查看sector 63和 sector 41940991 都是空,说明起始和结束扇区不正确,需要在偏移位3的位置用ntfs 标志查找起始和结束扇区,分别是2048和41938943
image.png

image.png

转到sector 2048,View 以NTFS BootSector 展示, Hidden sector 设置为起始扇区2048,Total sectors 设置为结束扇区-起始扇区=41936895
image.png

最后查看sector0, View 以Partition table 展示,relatvie 设置为起始扇区2048,Total Sectors 为结束扇区-起始扇区+1=41936896.
image.png

sector 0以Bytes显示,将42改为07(42表示的是动态分区,07表示是NTFS 分区 ),write sector 进行保存。
image.png
image.png

重新扫描磁盘后,可以看到磁盘显示为一个基本盘,可以进行数据读取写入操作。
image.png

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

云服务技术课堂,各类技术课程、最佳实践输出,来好好听课吧!

官方博客