服务器数据恢复环境:
某品牌PowerEdge系列服务器,磁盘阵列存储型号为该品牌MD3200系列存储,分配lun;
linux centos 7操作系统,EXT4文件系统。

服务器故障:
服务器在工作中由于未知原因突然关机且无法启动,管理员经过修复后可以启动服务器,但服务器的某个分区无法挂载。管理员对无法挂载的分区执行了fsck修复,修复完成后该分区可以成功挂载,但是查看该分区数据后发现部分文件丢失。

服务器数据恢复过程:
1、数据恢复工程师到达现场后将故障服务器以只读模式映射到北亚企安数据恢复服务器上,将所有硬盘数据以只读方式镜像到数据恢复服务器上,后续数据分析和数据恢复操作都基于镜像文件进行,避免对原始数据造成二次破坏。
2、通过对镜像文件的分析,数据恢复工程师初步诊断导致该服务器故障的原因是机房供电不稳引起的服务器非正常关机。
3、仔细分析故障服务器的底层数据,发现服务器的异常断电导致目录项被破坏,所幸的是底层数据依然存在,只需要数据恢复工程师手工修复即可恢复数据。
4、由于管理员对文件系统执行了fsck修复,被破坏的目录项在修复失败后以目录节点号命名,并存放于lost+found目录内,随后又清除了这些目录项所对应的数据区索引。这就是分区挂载成功后部分文件丢失的原因。这样的情况想要恢复数据,可以根据被删除的虚拟磁盘文件的文件系统和文件类型在vmfs卷自由空间中进行排查,匹配碎片并重新合并,最终通过这种方式将删除的虚拟磁盘文件恢复。
5、由于故障服务器采用的是EXT4文件系统,EXT4文件系统有一个特点就是文件丢失后其节点信息也会被清除,所以在本案例不能采用基于节点信息进行还原的方法来恢复数据,而是根据丢失的文件目录项节点号匹配lost+found目录下的文件名称这种方式来恢复数据。因为lost+found目录下的文件命名规则就是该文件的目录项节点号。可以先提取目录项节点号并与lost+found目录下的文件名进行一一对应,最终还原出服务器的原始目录结构。
6、基于镜像文件分析底层,在底层空间扫描目录项的区域,将目录项的节点号、数量等信息进行统计和记录,根据服务器磁盘中的文件系统信息将统计到的目录项和节点号进行整合匹配,然后匹配lost+found目录下的文件记录号,最终将服务器分区丢失的数据恢复出来。
7、经过管理员对恢复出来的数据进行反复验证后,确认恢复出来的数据完整有效,本次数据恢复工作完成。

【服务器数据恢复】Linux服务器分区不能挂载的数据恢复案例的更多相关文章

  1. linux篇-Linux MBR分区、挂载操作步骤,逻辑卷扩容操作

    Linux  MBR分区.挂载操作步骤,逻辑卷扩容操作 服务器开机之后,能自动识别出硬盘,但是硬盘不能够存储数据,必须对硬盘进行分区.格式化.挂载后才能使用:linux主分区和拓展分区总数不能超过4个 ...

  2. Linux磁盘分区和挂载

    Linux磁盘分区和挂载 分区 分区的方式: mbr分区 最多支持4个主分区 系统只能安装到主分区上 扩展分区要占用一个主分区 MBR最大支持2TB,但拥有最好的兼容性 gtp分区 支持无线多个主分区 ...

  3. Linux 实用指令(7)--Linux 磁盘分区、挂载

    目录 Linux 磁盘分区.挂载 1 分区基础知识 1.1 分区的方式: 1.2 windows 下的磁盘分区 2 Linux分区 2.1 原理分析 2.2 磁盘说明 2.3 使用lsblk指令查看当 ...

  4. Linux磁盘分区、挂载、查看文件大小

    快速查看系统文件大小命令 du -ah --max-depth=1 后面可以添加文件目录 ,如果不添加默认当前目录. 下面进入正题~~ 磁盘分区.挂载 引言: ①.分区的方式 a)mbr分区: 最多支 ...

  5. Linux 磁盘分区和挂载

    目录 Linux 磁盘分区和挂载 windows 下的分区 磁盘管理 相关命令 分区及挂载实现步骤 添加硬盘 分区步骤 步骤 挂载步骤 卸载分区步骤 补充: Linux 磁盘分区和挂载 windows ...

  6. XP下安装Centos 6.4 双系统 :Linux系统分区及挂载点,关键引导程序启动设置

    一.关于Linux的分区情况 虽然硬盘分区表中最多能存储四个分区,但我们实际使用时一般只分为两个分区,一个是主分区(Primary Partion)一个是扩展分区(extended partition ...

  7. linux硬盘分区及挂载

    今天买的一台服务器发现其硬盘容量与购买界面的描述不符,于是我去问了客服才知道有一块硬盘需要自己挂载,所以记录自己硬盘分区以及挂载操作得此文. 测试环境 ​ 由于时间限制,本人仅在centos 8下测试 ...

  8. Linux系统分区及挂载点

    一.关于Linux的分区情况 虽然硬盘分区表中最多能存储四个分区,但我们实际使用时一般只分为两个分区,一个是主分区(Primary Partion)一个是扩展分区(extended partition ...

  9. linux下的ssh工具之,本地上传到linux服务器and Linux服务器文件另存为本地。非sftp工具。

    首先,当你只有一个ssh工具可以连接linux,但你有想把文件在 linux 和windows(本地)直接的切换.其实可以的: 本文参考 1.将本地的文件,放到ssh远程的linux服务器上: 首先要 ...

  10. 云服务器 ECS Linux 服务器修改时区的两种方式

    在云服务器 ECS Linux 系统中,以 Centos6.5 为例,可以通过如下两种方式,修改系统时区: 可以使用命令 tzselect,修改时区.操作示例: [root@localhost ~]# ...

随机推荐

  1. Elemen ui&表单 、CRUD、安装

    ElementUI表单 Form表单,每一个表单域是由一个form-item组件构成的,表单域中可以放置各种类型的表单控键,有input.switch.checkbox 表单的绑定form 内容分别是 ...

  2. 微信小程序分包

    当我们程序太大的时候,打开小程序就会比较慢,此处就需要用到分包加载,按照模块划分不同的包,让用户在需要的时候才加载对用的模块,也就是用户在进入某些页面的时候才下载该页面的资源,提高小程序的打开速度,以 ...

  3. concurrent-map 和 sync.Map,我该选择哪个?

    concurrent-map 和 sync.Map,我该选择哪个? 官方的map并不是线程安全的,如果我们在多线程中并发对一个map进行读写操作,是会引发panic的.解决方案除了使用锁来对map进行 ...

  4. 【雅礼联考DAY02】Revolution

    #include<cstdio> #include<queue> using namespace std; const int N = 210 , M = 210000 , I ...

  5. python下载图片实现方法

    转载: https://www.jb51.net/article/119178.htm

  6. computed与watch的区别

    1.computed表示的是计算属性,watch指的是监听属性,监听的值变化时执行回调函数 2.computed会使用缓存,而watch不使用缓存,每次监听都执行回调 3.computed需要retu ...

  7. Cesium渲染调度

    1. 引言 Cesium是一款三维地球和地图可视化开源JavaScript库,使用WebGL来进行硬件加速图形,使用时不需要任何插件支持,基于Apache2.0许可的开源程序,可以免费用于商业和非商业 ...

  8. (七) Mysql 之 binlog redolog 二阶段提交

    (一)背景知识: 1 binlog binlog 我们中文一般称作归档日志, 是 MySQL Server 层的日志,而不是存储引擎自带的日志,它记录了所有的 DDL 和 DML(不包含数据查询语句) ...

  9. Educational Codeforces Round 137 (Rated for Div. 2) - F. Intersection and Union

    (线段树 + 思维)or 动态dp [Problem - F - Codeforces](https://codeforces.com/contest/1743/problem/E) 题意 数轴上有 ...

  10. 0627.selenium请求库*1

    今日内容: 一 Selenium请求库 一 Selenium请求库 1.什么是selenium? selenium是一个自动测试工具,它可以帮我通过代码 去实现驱动浏览器自动执行相应的操作. 所以我们 ...