服务器数据恢复-EMC存储磁盘损坏的RAID5数据恢复案例
服务器数据恢复环境:
北京某单位有一台EMC某型号存储,有一组由10块STAT硬盘组建的RAID5阵列,另外2块磁盘作为热备盘使用。RAID5阵列上层只划分了一个LUN,分配给SUN小机使用,上层文件系统为ZFS。
服务器故障:
存储RAID5阵列中有2块硬盘损坏离线,只有一块热备盘激活,RAID5阵列瘫痪,上层LUN无法正常使用。
服务器数据恢复过程:
1、将故障存储中所有磁盘编号后取出,由硬件工程师对所有磁盘做硬件故障检测,经过检测没有发现有硬盘存在物理故障和坏道。
磁盘没有发现物理故障和坏道,初步推断是某些磁盘读写不稳定导致故障发生。EMC控制器的磁盘检测策略非常严格,一旦检测到某些磁盘性能不稳定,EMC控制器极有可能会判定这些磁盘为坏盘,将认定为坏盘的磁盘踢出RAID阵列。一旦RAID阵列中掉线的盘到达到该RAID级别允许掉盘的极限值,就会导致RAID阵列崩溃不可用,由于EMC存储的LUN都是基于RAID阵列的,RAID崩溃会导致基于该RAID阵列的LUN不可用。
2、将故障存储中所有磁盘以只读方式做全盘镜像备份,镜像完成后按照编号将所有磁盘还原到原存储中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。镜像完成后发现源磁盘的扇区大小为520字节,使用工具将镜像数据做520字节To512字节的转换。
3、基于镜像文件分析底层RAID5阵列的相关信息。经过分析发现发现其中有2块盘(8号盘和11号盘)完全没有数据,从管理后台上显示这2块盘是Hot Spare,8号盘替换了离线的5号盘。虽然8号盘作为热备盘成功激活,但该RAID级别为RAID5,因为有2块盘离线,所以该RAID5阵列还缺失一块硬盘,所以数据没有同步到8号盘中。继续分析其他10块硬盘,分析数据在硬盘中的分布规律、RAID条带的大小、盘序等相关信息。
4、根据上面步骤分析出来的RAID信息虚拟重构原RAID。由于整个RAID阵列中一共掉线两块盘,需要分析这两块盘掉线的顺序。经过分析发现有一块盘在同一个条带上的数据和其他盘明显不一样,因此初步判断此盘可能是先掉线的。使用北亚企安自主开发的RAID校验程序对这个条带做校验后确认先掉线的那块硬盘。
5、由于LUN是基于RAID阵列的,完成原RAID阵列的重组后分析LUN在RAID阵列中的分配信息和LUN分配的数据块MAP。根据LUN相关信息解释LUN的数据MAP并导出LUN的所有数据。
6、使用北亚企安自主开发的ZFS文件系统解释程序对生成的LUN做文件系统解释,在解释某些文件系统元文件的过程中程序报错。开发工程师对程序做debug调试并分析程序报错原因,经过数小时的分析与调试,发现无法解释文件系统的的原因是存储瘫痪导致ZFS文件系统中某些元文件损坏。人工修复这些损坏的元文件。
7、修复完成后解析ZFS文件系统,解析所有文件节点及目录结构。
8、由用户方工程师对恢复出来的数据进行验证,验证过程中没有发现问题,确认恢复数据完整有效。本次数据恢复工作完成。
相关文章:
服务器数据恢复-EMC存储磁盘损坏的RAID5数据恢复案例
服务器数据恢复环境: 北京某单位有一台EMC某型号存储,有一组由10块STAT硬盘组建的RAID5阵列,另外2块磁盘作为热备盘使用。RAID5阵列上层只划分了一个LUN,分配给SUN小机使用,上层文件系统为ZFS。 服务器故障࿱…...
Nginx优化文件上传大小限制
Nginx默认配置 Nginx 默认情况下,上传文件的大小为1M,超过1M就会返回413错误。只用对Nginx进行简单配置即可解决问题。 优化Nginx文件上传大小限制 可以在Nginx配置文件中配置 client_max_body_size 配置项。 设置客户端请求正文允许的最大大小。如果…...
navicat SSH连接数据库报错: Putty key format too new
问题 下载 Putty 0.79 生成了密钥,但是在navicat 15 使用SSH通道连接数据库报错: Putty key format too new 错误原因和处理 原来是因为生成的私钥格式是 V3 , navicat 15 只能识别 V2 所以,在 PuTTYgen Load 私钥,重新保存为 …...
基于大规模MIMO通信系统的半盲信道估计算法matlab性能仿真
目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 %EM算法收敛所需的迭代 nIter 1; Yp Y(:,1:L_polit,:); %与导频序列相对应的部分 q…...
自然语言处理学习笔记(九)———— OVV Recall Rate与 IV Recall Rate
目录 1.OVV Recall Rate 2. IV Recall Rate 1.OVV Recall Rate OOV指的是“未登录词”(Out Of Vocabulary),或者俗称的“新词”,也即词典未收录的词汇。如何准确切分00V,乃至识别其语义,是整个NLP领域的核…...
区块链正在开启一场回归商业,融合商业的新发展
对于区块链来讲,它其实同样在延续着这样一种发展路径。 正如上文所说,区块链正在开启一场回归商业,融合商业的新发展。 而欲要实现这一点,区块链就是要从底层算法,底层数据传输,底层体系的打造着手…...
【软考】系统集成项目管理工程师(三)信息系统集成专业技术知识③
一、云计算 1、定义 通过互联网来提供大型计算能力和动态易扩展的虚拟化资源;云是网络、互联网的一种比喻说法。是一种大集中的服务模式。 2、特点 (1)超大规模(2)虚拟化(3)高可扩展性&…...
js中如何判断一个对象是否为空对象?
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 使用 Object.keys()⭐ 使用 for...in 循环⭐ 使用 JSON.stringify()⭐ 使用 ES6 的 Object.getOwnPropertyNames()⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带…...
Linux SysRq 简介
文章目录 1. 前言2. 背景3. Linux SysRq3.1 SysRq 简介3.1.1 SysRq 初始化 3.2 通过 procfs 发起 SysRq 请求3.2.1 修改内核日志等级3.2.1.1 触发3.2.1.2 实现简析 3.2.2 手动触发内核 panic3.2.2.1 触发3.2.2.2 实现简析3.2.2.3 应用场景 3.2.3 其它 SysRq 请求 3.3 通过 特殊…...
Mac版本破解Typora,解决Mac安装软件的“已损坏,无法打开。 您应该将它移到废纸篓”问题
一、修改配置文件 首先去官网选择mac版本下载安装 typora下载 然后打开typora包内容找到 /Applications/Typora.app/Contents/Resources/TypeMark/ 编辑器打开上面文件夹,这里我拉到vscode 找到page-dist/static/js/Licen..如下图 输入 hasActivated"…...
elementui el-dialog 动态生成多个,点击按钮打开对应的 dialog
业务场景: 根据后端返回的数据,动态生成表单,返回的数据中会有表单字段的类型,如果单选、多选、富文本,其它的属性还好说,重点说在富文本,因为我想通过 dialog 弹窗的方式,进行富文…...
自己开发一个接口文档页面html
演示效果 具体代码如下 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>框架框架文档页面</…...
信息化发展28
区块链概述 区块链技术具有多中心化存储、隐私保护、防篡改等特点, 提供了开放、分散和容错的事务机制, 成为新一代匿名在线支付、汇款和数字资产交易的核心, 被广泛应用于各大交易平台, 为金融、监管机构、科技创新、农业以及政…...
React 入门实例教程
目录 一、HTML 模板 二、ReactDOM.render() 三、JSX 语法 四、组件 五、this.props.children 六、PropTypes 七、获取真实的DOM节点 八、this.state 九、表单 十、组件的生命周期 constructor() componentWillMount() render() componentDidMount() 组件生命周期…...
Window安装Node.js npm appium Appium Desktop
Window安装Node.js npm appium appium Desktop 1.安装nodejs 参考链接: https://blog.csdn.net/weixin_42064877/article/details/131610918 1)打开浏览器,并前往 Node.js 官网 https://nodejs.org/ ↗。 2)在首页中,您可以看到当前 Node.…...
Pytorch intermediate(三) RNN分类
使用RNN对MNIST手写数字进行分类。RNN和LSTM模型结构 pytorch中的LSTM的使用让人有点头晕,这里讲述的是LSTM的模型参数的意义。 1、加载数据集 import torch import torchvision import torch.nn as nn import torchvision.transforms as transforms import torc…...
vue2+webpack升级vue3+vite,修改插件兼容性bug
同学们可以私信我加入学习群! 前言 在前面使用electronvue3的过程中,已经验证了历史vue2代码vue3混合开发的模式。 本次旧项目vue框架整体升级中,同事已经完成了vue3、pinia、router等基础框架工具的升级。所以我此次记录的主要是vite打包工…...
案例实战-Spring boot Web
准备工作 需求&环境搭建 需求: 部门管理: 查询部门列表 删除部门 新增部门 修改部门 员工管理 查询员工列表(分页、条件) 删除员工 新增员工 修改员工 环境搭建 准备数据库表(dept、emp) -- 部门管理…...
Spring6.1之RestClient分析
文章目录 1 RestClient1.1 介绍1.2 准备项目1.2.1 pom.xml1.2.2 创建全局 RestClient1.2.3 Get接收数据 retrieve1.2.4 结果转换 Bean1.2.5 Post发布数据1.2.6 Delete删除数据1.2.7 处理错误1.2.8 Exchange 方法 1 RestClient 1.1 介绍 Spring 框架一直提供了两种不同的客户端…...
冒泡排序、选择排序、插入排序、希尔排序
冒泡排序 基本思想 代码实现 # 冒泡排序 def bubble_sort(arr):length len(arr) - 1for i in range(length):flag Truefor j in range(length - i):if arr[j] > arr[j 1]:temp arr[j]arr[j] arr[j 1]arr[j 1] tempflag Falseprint(f第{i 1}趟的排序结果为&#…...
OpenCV(二十三):中值滤波
1.中值滤波的原理 中值滤波(Median Filter)是一种常用的非线性图像滤波方法,用于去除图像中的椒盐噪声等离群点。它的原理是基于邻域像素值的排序,并将中间值作为当前像素的新值。 2.中值滤波函数 medianBlur() void cv::medianBl…...
Prompt Tuning训练过程
目录 0. 入门 0.1. NLP发展的四个阶段: Prompt工程如此强大,我们还需要模型训练吗? - 知乎 Prompt learning系列之prompt engineering(二) 离散型prompt自动构建 Prompt learning系列之训练策略篇 - 知乎 ptuning v2 的 chatglm垂直领域训练记…...
装备制造企业是否要转型智能装备后服务型公司?
一、从制造到服务:装备制造企业的转型之路 装备制造企业作为国家经济发展的重要支柱,面临着日益激烈的市场竞争。在这样的背景下,越来越多的装备制造企业开始意识到,通过转型为智能装备后服务型公司,可以更好地满足客…...
day-49 代码随想录算法训练营(19) 动态规划 part 10
121.买卖股票的最佳时机 思路一:贪心 不断更新最小买入值不断更新当前值和最小买入值的差值最大值 思路二:动态规划(今天自己写出来了哈哈哈哈哈哈哈) 1.dp存储:dp[i][0] 表示当前持有 dp[i][1]表示当前不持有2.状…...
检查文件名是否含不可打印字符的C++代码源码
本篇文章属于《518抽奖软件开发日志》系列文章的一部分。 我在开发《518抽奖软件》(www.518cj.net)的时候,有时候需要检查输入的是否是合法的文件名,文件名是否含不可打印字符等。代码如下: //----------------------…...
学习笔记-正则表达式
https://www.runoob.com/regexp/regexp-tutorial.html 正则表达式re(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),可以用来描…...
Wireshark TS | 网络路径不一致传输丢包问题
问题背景 网络路径不一致,或者说是网络路径来回不一致,再专业点可以说是网络路径不对称,以上种种说法,做网络方向的工程师肯定会更清楚些,用简单的描述就是: A 与 B 通讯场景,C 和 D 代表中间…...
CMake高级用法实例分析(学习paddle官方的CMakeLists)
cmake基础学习教程 https://juejin.cn/post/6844903557183832078 官方完整CMakeLists cmake_minimum_required(VERSION 3.0) project(PaddleObjectDetector CXX C)option(WITH_MKL "Compile demo with MKL/OpenBlas support,defaultuseMKL." ON) o…...
数据采集: selenium 自动翻页接口调用时的验证码处理
写在前面 工作中遇到,简单整理理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大…...
IDEA安装翻译插件
IDEA安装翻译插件 File->Settings->Plugins 在Marketplace中,找到Translation,点击Install 更换翻译引擎 勾选自动翻译文档 翻译 鼠标右击->点击Translate...
网站建设费的摊销年限/信息流优化师是干什么的
linux 使用ssh key进行登陆1.创建keyssh-keygen -t rsa #回车# Enter file in which to save the key (/root/.ssh/id_rsa): #默认即可# Enter passphrase (empty for no passphrase): #输入密码# Enter same passphrase again: #再输入一遍保护密码# Your identification has …...
成都 视频网站建设/seo快速提升排名
前几天做了一个代码框的管理系统,我这几天抽空把他做成了图形化界面的样子,利用的是Tkinter。准备工作就是建立数据库可以参考之前的博客:python mysql学生成绩管理系统 1 首先我写了一个登陆界面类 login: 这个界面就是实现用户…...
泰安网站设计/今天发生了什么重大新闻
转载自:http://msdn.microsoft.com/zh-cn/library/system.badimageformatexception%28vvs.100%29.aspx BadImageFormatException 类 当动态链接库 (DLL) 或可执行程序的文件映像无效时引发的异常。 解决办法: DLL 或可执行文件作为 64 位程序集加载&…...
新公司做网站怎么弄/seo策略
go抽奖系统分6个数据库表:黑名单表(黑名单限制到期时间、id、ip地址、创建时间、修改时间)不同编码的虚拟券表(编码、id、奖品id、创建时间、更新时间、状态0正常,1作废,2已发放)奖品表(位置序号、奖品类型0虚拟币,1虚拟券&#x…...
做健身推广网站/优化网站视频
FTP(是一种文件传输协议)是一种非常广泛使用的网络协议,用来在网络中传输文件,FTP以明文传送用户认证信息,存在被网络窃听的危险。 在openssh软件包中,包含了一个成为SFTP(Secure FTP)的安全文件传输子系统…...
网站ftp根目录/百度广告推广费用
springboot利用druid和mybatis批量数据写入clickhouse时,刚开始的时候,完全按照mysql的写法,出现无法写入的问题。经过不断的尝试,发现所使用的驱动包,驱动类配置以及sql写法上都需要特别注意,不然批量写入…...