admin管理员组

文章数量:1535130

文件恢复

    • 概述
    • EXT 类型文件
    • XFS 类型文件

概述

删除一个文件,实际上并不清除 inode 节点和 block 的数据,只是在这个文件的父目录 里面的 block 中,删除这个文件的名字。Linux 是通过 Link 的数量来控制文件删除的,只有 当一个文件不存在任何 Link 的时候,这个文件才会被删除。 在 Linux 系统运维工作中,经常会遇到因操作不慎、操作错误等导致文件数据丢失的情况,尤其对于客户企业中一些新手。当然,这里所指的是彻底删除,即已经不能通过“回收站”找回的情况,比如使用“rm -rf”来删除数据。

EXT 类型文件

针对 Linux 下的 EXT 文件系统,可用的恢复工具有 debugfs、ext3grep、extundelete 等。 其中 extundelete 是一个开源的 Linux 数据 恢复工具,支持 ext3、ext4 文件系统。下面将介绍使用 extundelete 工具如何恢复误删除的文件

1.安装依赖包
在编译安装 extundelete 之前需要先安装两个依赖包 e2fsprogs-libs 和 e2fsprogs-devel,
e2fsprogs-devel 安装依赖于 libcom_err-devel 包。

2、安装下载工具wget
因为要下载extundelete工具需要用到wget下载工具,所以也需要安装

3、从网络下载extundelete工具

4、将tar包移动到/opt下

5、解压工具extundelete-0.2.4.tar.bz2

6、进入解压过的目录下,配置安装目录,编译安装

7、创建命令软链接否则会报错

8、添加一块新硬盘,大小随意,给硬盘分区

9、全部回车即可

10、格式化分区为ext3文件系统

11、创建一个挂载分区/data,将分区挂载进去,然后新建4个文件

12、删除其中2个文件,切换到其他目录,卸载分区,用extundelete命令恢复分区数据

13、恢复完成后在当前目录下会有一个RECOVERED_FILES的目录,里面存放被恢复的数据

14、验证恢复数据成功

XFS 类型文件

extundelete 工具仅可以恢复 EXT 类型的文件,无法恢复 CentOS 7 系统默认采用 xfs 类型的文件。针对 xfs 文件系统目前也没有比较成熟的文件恢复工具,所以建议提前做好数 据备份,以避免数据丢失。xfs 类型的文件可使用 xfsdump 与 xfsrestore 工具进行备份恢复。

1、安装xfsdump工具

2、改变sde1的文件系统类型为xfs


3、挂载到/data


4、在分区写入数据

5、备份整个分区,取名为dump_sde1,整个过程有交互
->dump_sde1 ####指定备份会话标签
-> sde1 ####指定设备标签,就是对要备份的设备做一个描述

xfsdump 的命令格式为:xfsdump -f 【备份存放位置】 【要备份路径或设备文件】

常用的备份参数包括以下几种:

  • -f:指定备份文件目录
  • -L:指定标签 session label
  • -M:指定设备标签 media label
  • -s:备份单个文件,-s 后面不能直接跟路径

6、查看备份情况

7、删除分区下所有文件

8、用xfsrestore恢复数据

9、验证数据已恢复

说明:
xfsdump 按照inode 顺序备份一个 xfs 文件系统。xfsdump 的备份级别有两种:0 表示完全备份;1-9 表示增量 备份

xfsdump 的备份级别默认为 0。

本文标签: 文件误删除CENTOS