共计 1308 个字符,预计需要花费 4 分钟才能阅读完成。
导读 | 还需要场景吗?数据被删除了。。。突发事件,应用上传的数据被程序自动删掉了,可悲的是还没有数据备份,数据是放在系统的 /data/webapps/xxxx/upload 目录下面,可把我们急坏了,之前又没有做过数据恢复的测试,然后我找到了一款数据恢复的软件,成功把删除的大部分数据找回来了,我的数据恢复过程如下。 |
安装恢复软件
1、epel 仓库安装
如果我们的源里面添加了 epel 仓库的话,我们可以直接使用下面的命令安装。
2、源码编译安装
三、删除数据查找
因为我的数据路径比较深,所以我们需要一步步查找,可以先从根分区 inode 查找
我们会看到 weapps 目录的 inode,
我们看到项目的 inode,
extundelete /dev/sda5 --inode 24903688
我们找到了最终删除数据的目录 upload
我们可以看到标称的 Deleted,这些数据就是我们要进行恢复的数据。
四、数据恢复
那我们就恢复指定目录,以当前分区为根分区进行路径设定,项目名进行掩盖
因为磁盘数据一直在读写,所以有些文件之前的 inode 已经被重新分配了,导致部分数据无法恢复,数据最后会告诉我们有多少文件没有回复,但是大部分数据我们已经恢复了,这就是很重要的事情了。
那我们查看一下回复的数据吧,软件会在当前目录生成一个目录 RECOVERED_FILES 里面就是我们恢复的数据。
恢复全部数据可以使用命令
使用方法
在数据删除之后,首先要卸载被删除数据所在的磁盘或是分区,如果是系统根分区遭到误删除,就需要进入单用户模式下,将根分区以只读的方式挂载。
原因:因为文件删除之后,仅仅是将文件的 inode 节点中的扇区指针清零,实际上文件还存在磁盘上面,如果磁盘以读写方式挂载,这些删除的数据块可能会被系统从新分配出去,这些数据块被覆盖之后,这些数据就真的丢失了,所以以只读的方式挂载,尽可能避免数据被覆盖。
正文完
星哥玩云-微信公众号