当前位置: 首页 > news >正文

磁盘分区与文件系统格式相关

MBR

重要数据:

  • 主引导扇区(512字节)
    • 主引导记录:记录系统引导程序相关数据(前446字节)
    • 分区表:记录磁盘分区开始位置、大小等信息(4*16=64字节)
    • 魔数:0x55AA(最后2字节)

MBR格式磁盘数据布局示意图:

GPT

重要数据:

  • 保护MBR(第1个扇区):预留,兼容MBR分区格式
  • GPT头(第2个扇区)
    • 定义分区表的起始位置,分区表的结束位置、每个分区表项的大小、分区表项的个数及分区表的校验和等信息
    • UEFI相关信息等
  • 分区表(第3-34个扇区)
    • 一个分区表项占128字节,32扇区=512*32字节就可以放128个分区表项
  • GPT头备份(最后1个扇区)
  • 分区表备份(位置记录在GPT头备份)

GPT格式磁盘数据布局示意图:

MBR对比GPT

类别

MBR

GPT

分区大小上限

2TB

18EB

分区数量上限

4个主分区,N个逻辑分区

128个主分区,N个逻辑分区

常规引导模式

BIOS

UEFI

文件系统机制

磁盘分区后会进行文件系统创建,比如windows NTFS, Linux ext2/3/4, xfs等。

文件系统采用特有的逻辑机制来管理和存储文件数据,一般都会把磁盘分区以块为单位划分,然后采用一个全局的位图文件bitmap来记录数据块的使用与否。

每个文件占用一定数量的数据块,数据块位置由关联的inode来记录。

//同时文件系统里面还有文件相关属性来记录一个文件是否删除。

文件系统格式布局参考:

https://blog.csdn.net/xxxxxxx_y/article/details/155748481

Ext布局示意图

当删除发生时

文件系统一般做的几件事情:

  1. 将文件属性flag置为已删除
  2. 通过inode查询数据块位置,并在数据块位图中相应置为0(实际上最重要的数据块没有被改动)
  3. 将文件inode置为已删除(也是在inode位图中相应置为0)
尝试恢复文件

如果删除文件后发现及时,可以尝试做的事情:

  1. 从磁盘分区开始位置遍历,尝试按文件系统布局格式找到inode相关信息保存区域
  2. 依次遍历inode信息,读取文件属性信息及文件数据块位置,重置文件属性删除flag、inode位图及数据库位图可尝试恢复文件
  3. 即使无法恢复全部文件属性,也可以读取数据块数据获取文件Raw数据
无法恢复的场景

最影响数据恢复的一个因素就是,是否有其他磁盘写操作干扰。因为磁盘其他文件可能是活动的状态,再加上新的写文件操作,可能会把已置0的数据块覆盖掉,导致文件数据的永久性改动,要恢复就几乎不可能了。

如果只是磁盘分区头位置信息缺失,至少还可以通过遍历全盘暴力扫描的方式找到数据。

建议:当认识到文件被删除的时候,尽量不要做任何写操作了,同时有条件的第一时间可以给磁盘打快照保存现场,然后尝试用合适的工具将磁盘离线只读的方式进行恢复。

磁盘读写&恢复工具:

WinHex

说明&下载:http://www.x-ways.net/winhex/

以通用的 16 进制编辑器为核心,专门用来对付计算机取证、数据恢复、低级数据处理、以及 IT 安全性、各种日常紧急情况的高级工具: 用来检查和修复各种文件、恢复删除文件、硬盘损坏、数码相机卡损坏造成的数据丢失等。主要功能:

  • 查看,编辑和修复磁盘,可用于硬盘,软盘,以及许多其它可存储介质类型。
  • 支持 FAT12/16/32, exFAT, NTFS, Ext2/3/4, Next3, CDFS, UDF
  • 内置RAID和动态磁盘分析器
  • RAM 编辑器,可直接查看/编辑被调试程序的虚拟内存
  • 数据解释器,精通 20 种数据类型
  • 使用模板编辑数据结构
  • 连接,分割,合并,分析和比较文件
  • 智能搜索和替换功能,进行替换时,如果替换字符大于或小于原始字符时可进行选择性操作
Windows File Recovery

说明:https://support.microsoft.com/en-us/windows/recover-lost-files-on-windows-10-61f5b28a-f5b8-3cc2-0f8e-a63cb4e1d4c4

下载:

https://www.microsoft.com/zh-cn/p/windows-file-recovery/9n26s50ln705?activetab=pivot:overviewtab

支持以下功能:

  • 可指定文件名,关键字(通配符),文件路径或扩展名进行扫描恢复支持恢复 JPEG,PDF,PNG,MPEG,Office 文件,MP3 和 MP4,ZIP 文件等。
  • 支持从 硬盘,SSD (固态硬盘),USB 和存储卡中恢复文件。
  • 支持 NTFS、FAT、exFAT 和 ReFS 等文件系统。
TestDisk

说明&下载:https://www.cgsecurity.org/wiki/TestDisk

支持以下功能:

  • 修复分区表, 恢复已删除分区
  • 用FAT32备份表恢复启动扇区
  • 重建FAT12/FAT16/FAT32启动扇区
  • 修复FAT表
  • 重建NTFS启动扇区
  • 用备份表恢复NTFS启动扇区
  • 用MFT镜像表(MFT Mirror)修复MFT表
  • 查找ext2/ext3/ext4备份的SuperBlock
  • 从FAT,NTFS及ext2文件系统恢复删除文件
  • 从已删除的FAT,NTFS及ext2/ext3/ext4分区复制文件.

Recuva

说明&下载:https://www.ccleaner.com/recuva/download

支持以下功能:

  • 可以用来恢复那些被误删除的任意格式的文件,能直接恢复硬盘、U盘、存储卡(如SD 卡,TF 卡等等)中的文件,只要没有被重复写入数据覆盖,无论格式化还是删除均可直接恢复
  • 支持 FAT12,FAT16,FAT32,NTFS 文件系统
http://www.cnnetsun.cn/news/22786.html

相关文章:

  • 【建议收藏】从0到1:产品经理学习大模型的全方位优势与应用场景全解析
  • “国六”标准下,WINDHILL助力车企优化排放测试流程
  • 63、Unix 系统中的 vi、ex 和 vim 编辑器使用指南
  • 合同盖章前,如何比对差异,确保纸质版与电子版100%一致?
  • java+vue+SpringBoot校园失物招领系统(程序+数据库+报告+部署教程+答辩指导)
  • java+vue+SpringBoot贸易行业crm系统(程序+数据库+报告+部署教程+答辩指导)
  • 81、Linux系统管理操作指南
  • 76、深入理解 Git 常用命令
  • 药物发现领域有哪些推荐的文献检索工具?
  • TikTok 矩阵稳定性实战指南:从环境搭建到风险防控的全链路方案​
  • 聊聊分段斜坡补偿电路在 BOOST 和 BUCK 系统中的应用
  • 搞过电机控制的都知道,调PI参数能让人头秃。今天咱们来拆解一个能自动整定电流环参数的Simulink仿真模型,手把手看它怎么把玄学变成科学
  • springboot基于vue的防诈宣传平台 可视化_ig18pfq1
  • springboot基于vue的阿克苏地区收割机租赁系统 农机销售交易网站_4j60pknt
  • 毕业设计项目 深度学习yolo11水果识别系统(源码+论文)
  • 毕业设计项目 深度学习动物识别系统(源码+论文)
  • PandasAI应用与实战解析
  • 如何在Linux上部署Web项目
  • 57、外设总线概述
  • 60、Linux内核源代码物理布局解析
  • Google Apps Script OAuth2 库完整指南:轻松实现第三方服务集成
  • PySceneDetect完整指南:零基础掌握视频智能分割技术
  • 24、结合psad和fwsnort保障网络安全
  • 32、网络攻击欺骗与 fwsnort 脚本详解
  • 师生交流论坛|基于springboot + vue师生交流论坛系统(源码+数据库+文档)
  • 二手商城|基于springboot + vue二手商城系统(源码+数据库+文档)
  • 20、帧缓冲区接口设计与 STBmenu 简易 UI 开发
  • 24、深入浅出:SNMP 实践指南
  • 高级前端 Input 公共组件设计方案(Vue3 + TypeScript)
  • 前后端HTTPS及证书配置完整流程