成功恢复新网LINUX REISERFS 6块盘 RAID5邮件服务器

简介:
[摘要]
    新网( [url]http://www.xinnet.com[/url]),企业邮件服务器,存储于146G×6 RAID5中,有上百万企业用户的邮件,数据区,只分一个区,文件系统为REISERFS,正常工作中,RAID突然OFFLINE,管理员到机房检查时,发现有两块盘报警,将其中一块强制上线后发现卷无法MOUNT,于是强行FSCK 并REBULD TREE,历时4天,完成后仍无法MOUNT。无奈之下,向数据恢复公司求救,大多数公司无法提供可行的解决方案。新网在多方比较及评估后,选择让我们完成。
[分析]
    这种RAID的问题事实上是很常见的,通常是因为亮灯的两块盘并不是同时掉线,而恰巧的是,强制上线了早离线的硬盘,导致数据区新鲜的和陈旧的混在一起,文件系统结构不一致。本身强制上线后,会在读写过程中生成新的检验条带,所以会影响一部分数据,但如果读写不多或根本无法MOUNT的话,这种灾难的严重性将会小得多,此例中最为严重的问题在于REBUILD TREE,相当于试图将一个混杂的文件系统连续化。这样的结果将会导致文件系统的所有结构体全面出错,通常这是无法挽救的。加上用户的文件目录结构非常复杂,文件总数粗略估计上亿,更是机会渺茫。
[解决方案]
    1、应试图将文件系统结构区单独提出来进行分析,这样工作量会小很多,也给反复查找分析提供了可能。但REISERFS的文件系统区相对较散且无规律,需通过自主程序进行提取及分析,此例中,光1级节点提出的大小达6G之大,文件结构可谓复杂。(用户也是因EXT3面对这样的结构崩溃才选用REISERFS的,可见其结构复杂程度)
    2、对文件系统区进行一致性检验,相当于手工FSCK,修正错误地方,此例中,好多文件系统节点区都因检验关系,使关键属性字节发生了改变。通过程序将所有节点状态统一初始化,完成节点一致性处理
    3、完成上述两步后有两种做法,一是在LINUX系统下再次FSCK,此例效果不好,(因LINUX FSCK的功能有限,在父节点稍有错误,其子节点便会全部打入LOST+FOUND里,无法还原原本的目录结构),二是通过只读方式,用自主程序在WINDOWS下提取数据,需忽略许多错误,修改程序后,使用此法,所有数据已可提取。
[后记]
    最近这种两块硬盘离线,不知道哪块先离、哪块后离的例子很多。希望RAID用户可以在两块硬盘离线后谨慎对待,如果可以查到日志,通过日志确定为好。如果强制上线出错,应马上停止操作,切不可做FSCK等操作。
    另外,老生常谈的事,LINUX的FSCK风险很大(实际WINDOWS也会有),做之前请尽量看清提示,如果出错信息异常,应选择其他途径。




本文转自 张宇 51CTO博客,原文链接:http://blog.51cto.com/zhangyu/33743,如需转载请自行联系原作者
目录
相关文章
|
4天前
|
运维 监控 Linux
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
|
2月前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
W9
|
2月前
|
运维 关系型数据库 MySQL
轻松管理Linux服务器的5个优秀管理面板
Websoft9 应用管理平台,github 2k star 开源软件,既有200+的优秀开源软件商店,一键安装。又有可视化的Linux管理面板,文件、数据库、ssl证书方便快捷管理。
W9
103 1
|
2月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
42 4
|
2月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
73 4
|
3月前
|
监控 Linux Shell
|
2月前
|
运维 监控 安全
盘点Linux服务器运维管理面板
随着云计算和大数据技术的迅猛发展,Linux服务器在运维管理中扮演着越来越重要的角色。传统的Linux服务器管理方式已经无法满足现代企业的需求,因此,高效、安全、易用的运维管理面板应运而生。
|
2月前
|
运维 监控 Linux
服务器管理面板大盘点: 8款开源面板助你轻松管理Linux服务器
在数字化时代,服务器作为数据存储和计算的核心设备,其管理效率与安全性直接关系到业务的稳定性和可持续发展。随着技术的不断进步,开源社区涌现出众多服务器管理面板,这些工具以其强大的功能、灵活的配置和友好的用户界面,极大地简化了Linux服务器的管理工作。本文将详细介绍8款开源的服务器管理面板,包括Websoft9、宝塔、cPanel、1Panel等,旨在帮助运维人员更好地选择和使用这些工具,提升服务器管理效率。
|
3月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
76 5
Linux系统之安装Ward服务器监控工具
|
2月前
|
安全 算法 Linux
Linux 服务器还有漏洞?建议使用 OpenVAS 日常检查!
在数字化时代,Linux 服务器的安全至关重要。OpenVAS 是一款优秀的开源漏洞扫描工具,可以帮助及时发现并修复服务器中的安全隐患。本文将介绍 OpenVAS 的主要功能、使用方法及应对漏洞的措施,帮助用户加强服务器安全管理,确保企业数字化安全。
61 7