磁盘的数据恢复

起因:

服务器断电,没有正常关闭服务器导致,通过xshell连接发现无法正常连接至服务器,只能通过vmware管理进入控制台

问题:

linux系统无法启动提示give root password for maintenance

系统重启停留在如下[Welcome to emergency mode]画面,提示输入root密码进入维护

进入紧急模式的原因:非法重启或硬盘故障或者错误编辑/etc/fstab文件等错误操作都会引起Linux系统无法启动,同时无法进入操作系统,这样就会出现“give root password for maintenance”的错误

解决方法:

一、 fsck修复

1、这时候输入服务器root用户的密码

2、输入 fsck -y

即开始修复文件系统。时间根据硬盘的大小,在1个小时-8个小时不等。

3、修复完成后输入reboot回车重启电脑即可。

二、重新挂载

重新挂载/目录,因为现在我们只有r读的权限,而没有w写的权限

#mount –o remount,rw / 此处是重新挂载/,并给予rw读写的权限

vi /etc/fstab进行修改

lsblk -f(图一)

vi /etc/fstab (图二)

进入到配置文件

拿图一和图二做对比,图一有的UUID就保存 没有的就在图二里面删注释掉 或删掉 如图

然后就是保存退出 最后就是重启

三、e2fsck修复

1、 键入root密码,然后按”输入Enter”键;

2、此时画面便会出现以下指令提示:(Repair filesystem)1#;

3.、于提示后输入”e2fsck -y /dev/你的分区″,再按”键入(Enter)”,便可检查档案系统;

4、系统即会自动进行修复并于画面显示修复进度;

5、完成后键入”exit”,再按输入键,重新启动系统。

如果以上方法没用 使用下面步骤:

注释掉/etc/fstab内,有问题的挂载项,这里可以看出应该是/dev/data/data1分区表出了问题。注释掉reboot后可以看系统是否可以正常启动

xfs 文件系统损坏修复 fscheck(补充,未使用到)

需要先进行mount查找挂载路径,unmount将其卸载
​
1、用xfs_repair /dev/data/data1          #进行修复 修复成功进入4,失败进入下一步
​
2、执行xfs_repair -L /dev/data/data1     #进行修复 修复成功进入4,失败进入下一步
​
3、文件彻底损坏,使用工具或找专员进行修复
​
4、使用xfs_check /dev/data/data1          #查看修复是否成功 修复成功便可以挂载,失败进入2

磁盘彻底损坏无法恢复

数据恢复工具-Testdisk

Testdisk

参考文档:

testdisk修复磁盘文件

开源工具TestDisk数据恢复方法luckywang1103的博客-CSDN博客testdisk

下载地址:https://www.cgsecurity.org/wiki/TestDisk_Download

下载地址:TestDisk Download

Testdisk 是一个强大的免费的跨平台的数据恢复工具,根据它的官网 上的简介,这款软件主要被设计用于恢复丢失的分区以及修复那些由于人为或者病毒等原因导致分区表错误而无法启动系统的问题

使用 TestDisk 的重点:

用 方向键 和 上一页/下一页 按键在TestDisk 中导航。

然后, 按Enter 键确认你的选择.

若要返回前一页或者退出TestDisk, 按 q (Quit) 键。

若要在 TestDisk 下保存修改,按 y (Yes) 或者 Enter 键来确认

如果确实要把分区信息写入主引导记录(MBR),应该选择 “Write” 选项并按 Enter 键。

1、安装

下载后解压安装,使用脚本程序进入工具

2、使用

创建一个*.log文件存储运行TestDisk时的信息。(会在当前目录)

选择你要恢复数据的分区,也可以选择整个硬盘

选择分区的类型

选择”Analyse”选项

TestDisk对当前分区的结构进行分析,按回车键确认

3、罗列分区结构

存在两个1,主分区指向同一个部分或者是不可用的分区表入口。存在1个可用的扩展分区,和一个丢失的逻辑分区。

P代表主分区,L代表逻辑分区 E代表扩展分区 D表示已经删除的分区

4、磁盘分析

Quick Search磁盘分析 根据所选分区大小花费时间不一样

选择”Quick Search”进行下一步

这时请注意你按下的每一个键,很可能按错回到前面Quick Rearch 的界面,又需要等待漫长的数据分析过程。

按回车进行下一步

5、等待分析结束

找到你所要恢复数据的分区,按“P”进入文件列表,” : ”选择所要恢复的文件夹,”c”拷贝到自己的地址中,我是新加了一块盘,拷到了新加的盘中,u盘应该是”/media/udisk”,移动硬盘是”/run/media/disk”

当把你想要恢复的数据全部拷贝完之后,按”q”退出程序

最后,十分感谢张馆长的帮助,磁盘才得以恢复