通过之前的博客WinHex恢复分区,我们知道

在MBR中,一共有四行是我们分区的引导,所以,我们手动只能创建三个主分区,通过工具软件,我们最多可以创建四个主分区

那么测试:如何创建四个主分区?

首先,我们创建三个主分区



在创建第四个分区的时候,观察会发现自动变成了一个扩展分区就是绿框框,绿框框里面才是我们创建的分区,被称为逻辑分区



我们使用Winhex打开创建的虚拟磁盘

通过之前讲的07代表NTFS的分区格式,那么0F代表扩展分区的格式



我们手动把0F改为07ctrl + s保存





回到磁盘管理重新扫描查看





发现我们的扩展分区和逻辑分区变为了主分区,而且会提示我们格式化,当我们格式化后,就拥有了四个主分区

恢复三个主分区

由于三个以后就会自动生成扩展和逻辑分区,这里我们先学习如何恢复三个主分区

上节我们知道MBR引导扇区通过四行分区表来定位到创建的分区2-5这几列控制分区类型



6-9列控制分区的开始



A-D列控制分区的大小

当我们手动删除分区的时候,其实并没有删除分区的数据其实还存储在扇区中,我们手动删除的只是MBR索引,那么只需要将MBR四行分区表中填入分区的开始和大小即可恢复

首先手动创建三个分区并将三个分区删除,进入WinHex打开我们创建的虚拟磁盘,在之前有介绍





这四行没有任何数据,正式我们想要的

寻找第一个分区

使用16进制搜索,在1扇区往下搜索55AA,条件偏移为512=510





我们的扇区跳转到了2048扇区



这里磁盘开头为EB 52 90,是NTFS的标识,4E 54 46 53,代表ASCII值NTFS

这些都是固定格式,当然还有很多的固定格式

上节我们知道1C-1F为磁盘的开始,28-2B为磁盘的大小

那么我们就得到的分区一的MBR引导



1c为2048



28为6,143,999

我们使用记事本记录下来

寻找第二个分区

我们并不知道哦分区二的开始在哪里

分区一的开始 + 分区一的大小 = 分区一的结束,这个是肯定的,我们加上去看一看



6,146,047扇区,我们跳转到这个扇区去看一看,跳转分区快捷键ctrl + g

跳转到这个分区会发现这个扇区的1C282048扇区_分区一的开始扇区的内容还是一模一样的,这个我们称为dbr1备份,分区一的备份



我们手动滚到下一个扇区,6146048扇区



观察1C的值为6,146,048和当前磁盘一样,我们磁盘字节1C为磁盘的开始,所以我们当前的扇区就是dbr2的开始

观察28的值为7,167,999.



我们将这两个值记录下来

由此我们可以得到一个结论:

1C + 28 + 1 = 下一个分区的开始

1C + 28 = 分区的备份

分区一的开始 + 分区一的大小 + 1 = 分区二的开始

加一是因为刚刚我们手动滚了一个分区

寻找三个分区

根据我们刚刚的方法,那么第三个分区的开始就是分区二的开始 + 分区二的大小 + 1 = 分区三个开始



通过计算得出,分区三的开始为13,314,048,跳转到该扇区



1C值为13,314,048和当前扇区一样,确实就是第三个分区的开始

28值为3,071,999,记录下来



现在我们得到了三个分区的开始和结束,只需要在MBR分区表填写即可恢复我们的分区

回到0扇区 MBR填写分区表



填写后保存,在磁盘管理里查看



成功将我们的分区恢复

Winhex 恢复三个分区的更多相关文章

  1. MariaDB/MySQL备份和恢复(三):xtrabackup用法和原理详述

    本文目录: 1.安装xtrabackup 2.备份锁 3.xtrabackup备份原理说明 3.1 备份过程(backup阶段) 3.2 准备过程(preparing阶段) 3.3 恢复过程(copy ...

  2. linux下(fdisk,gdisk,parted)三种分区工具比较

    1 2种分区结构简介 MBR分区 硬盘主引导记录MBR由4个部分组成 主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序. 出错信息数据区,偏移地址0089H- ...

  3. mysql数据库优化(三)--分区

    mysql的分区,分表 分区:把一个数据表的文件和索引分散存储在不同的物理文件中. 特点:业务层透明,无需任何修改,即使从新分表,也是在mysql层进行更改(业务层代码不动) 分表:把原来的表根据条件 ...

  4. 诺顿ghost备份恢复系统或分区

    一 诺顿ghost简介 1,可以克隆分区 也可以克隆磁盘 2,克隆成img或磁盘内容对刻 3,磁盘分区--img---磁盘分区 磁盘---磁盘   二 操作步骤 对刻好的系统 整体思路: 1,A是模板 ...

  5. MapReduce实战(三)分区的实现

    需求: 在实战(一)的基础 上,实现自定义分组机制.例如根据手机号的不同,分成不同的省份,然后在不同的reduce上面跑,最后生成的结果分别存在不同的文件中. 对流量原始日志进行流量统计,将不同省份的 ...

  6. 如何让阿三 Windows 10、11 的恢复分区(Recovery Partition)恢复到 “盖茨” 模式

    如何将 Windows Server 2022 的恢复分区(Recovery Partition)移动到 C 盘之前,恢复 C 盘容量调整功能. 请访问原文链接:https://sysin.org/b ...

  7. Nubia Z5S(高通公司MSM8974) QHSUSB_BULK砖的方法节省模式(随着win7在恢复recovery分区案例)

    Nubia Z5S在某些异常情况或按组合键进入QHSUSB_BULK状态, 这种模式的现象, 猜想windows(实例win7)即使在数据线, 它会出现在计算机n载,甚至会提示要格式化某些分区(这里要 ...

  8. mysql分区功能(三个文件储存一张表)(分区作用)(分区方式)

    mysql分区功能(三个文件储存一张表)(分区作用)(分区方式) 一.总结 1.mysql数据表的存储方式(三个文件储存一张表): 一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放 ...

  9. WINHEX 使用教程

    Winhex有完善的分区管理功能和文件管理功能,能自动分析分区链和文件簇链,能对硬盘进行不同方式不同程度的备份,甚至克隆整个硬盘:它能够编 辑任何一种文件类型的二进制内容(用十六进制显示)其磁盘编辑器 ...

  10. WinHex简介

    WinHex是一个专门用来对付各种日常紧急情况的小工具.它可以用来检查和修复各种文件.恢复删除文件.硬盘损坏造成的数据丢失等.同时它还可以让你看到其他程序隐藏起来的文件和数据.得到 ZDNetSoft ...

随机推荐

  1. 【Nday】Spring-Cloud-SpEL-表达式注入漏洞复现

    # 环境搭建 JDK 15下载:   https://www.oracle.com/java/technologies/javase/jdk15-archive-downloads.html 在Cen ...

  2. 最长公共子序列(LCS)tzoj:5752

    http://www.tzcoder.cn/acmhome/problemdetail.do?method=showdetail&id=5752 题意:求两个串的最长公共子序列(顺序相同即为子 ...

  3. python菜鸟学习: 6. 字典常用方法

    # -*- coding: utf-8 -*-dict1 = {"name": "liyuzhoupan", "age": "22 ...

  4. nodejs express 服务代理

    //方法1 var proxy = require('express-http-proxy'); app.use('/map', proxy('https://test.baidu.com/', { ...

  5. HFSS仿真疑问

    P15针在0.5pitch下,GS结构相比GSG更接近50Ω,但是在某些频点会有明显的反射,该频点插损比较大. 从TDR上看,阻抗呈正弦形状变化,有些奇怪. 空气盒子只增加了2mm,试了一下将空气盒子 ...

  6. JetPack Compose 入门还得是官方

    官方写的真不错! 和那些所谓"教程"比真的简单高效不罗嗦! 所以还得是官方! 使用 Jetpack Compose 更快地打造更出色的应用 https://developer.an ...

  7. Debug --> python list.sort()食用方法

    list.sort(key=lambda x:x[1] , reverse=True) 参数 key 指明按照什么进行排序.lambda是匿名函数,参数的第一个x表示列表的第一个元素,如表示列表中的元 ...

  8. hbuliter x 连接雷电模拟器

    adb  路径 E:\HBuilderX\plugins\launcher\tools\adbs 也可以配置环境变量 配置环境变量:将adb.exe所在路径,放在Path中计算机(右键)→属性→高级系 ...

  9. C语言——数组

    一.一维数组 声明形式: type arrayName [ arraySize ]; 实例: 1 #include <stdio.h> 2 int main() 3 { 4 int Arr ...

  10. SQL之查询

    1. SQL之模糊查询 例如查询姓名时,不用输入全名,仅仅输入其中的一部分 语法: select 列名 from 表名 where 列名 like 匹配串 其中 匹配串用英文的单引号括起来 四种匹配模 ...