linux系统误删文件怎么办!使用extundelete恢复数据

简介:

一:环境搭建

1.下载http://extundelete.sourceforge.net/
2.安装e2fsprogs和e2fsprogs-libs   

1
yum  install  e2fsprogs e2fsprogs-libs -y

3.上传文件至linux主机

1
put C: /Users/CPIC/Desktop/extundelete-0 .2.4. tar .bz2

 
4.安装软件

1
2
3
4
tar  jxvf extundelete-0.2.4. tar .bz2
cd  /root/extundelete-0 .2.4
. /configure
make  make  install
1
2
3
4
5
6
7
8
报错:
(1)configure: error:  in  ` /root/Desktop/extundelete-0 .2.4':
      configure: error: C++ compiler cannot create executables
  解决:yum  install  gcc*  -y
  
(2)Configuring extundelete 0.2.4
      configure: error: Can't  find  ext2fs library
解决:yum  install  e2fsprogs* -y


二:实验

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
mkdir  /shiyan    #创建挂载目录
fdisk  /dev/sdb   #划分为一个主分区 
    n-p-1-w
mount  /dev/sdb1  /shiyan     #挂载
cp  -a  /etc/passwd  /shiyan/   #复制文件
cd  /shiyan
rm  -rf  passwd             #删除文件
umount  /shiyan             #卸载文件系统
[root@node1 /] # extundelete /dev/sdb1 --inode 2      #查看inode信息,重要!!
NOTICE: Extended attributes are not restored.
Loading filesystem metadata ... 8  groups  loaded.
Group: 0
Contents of inode 2:
0000 | ed 41 00 00 00 10 00 00 7c 8f ed 59 77 8f ed 59 | .A......|..Yw..Y
0010 | 77 8f ed 59 00 00 00 00 00 00 02 00 08 00 00 00 | w..Y............
0020 | 00 00 00 00 03 00 00 00 49 00 00 00 00 00 00 00 | ........I.......
0030 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0050 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0070 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0080 | 1c 00 00 00 00 19 23 02 00 19 23 02  dc  ff 9c b1 | ...... #...#.....
0090 | 33 8f ed 59 00 00 00 00 00 00 00 00 00 00 00 00 | 3..Y............
00a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00b0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00d0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00f0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
Inode is Allocated
File mode: 16877
Low 16 bits of Owner Uid: 0
Size  in  bytes: 4096
Access  time : 1508740988
Creation  time : 1508740983
Modification  time : 1508740983
Deletion Time: 0
Low 16 bits of Group Id: 0
Links count: 2
Blocks count: 8
File flags: 0
File version ( for  NFS): 0
File ACL: 0
Directory ACL: 0
Fragment address: 0
Direct blocks: 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Indirect block: 0
Double indirect block: 0
Triple indirect block: 0
File name                                       | Inode number | Deleted status
.                                                 2
..                                                2
lost+found                                        11             Deleted
passwd                                             12             Deleted


恢复单个文件extundelete  /dev/sdb1  --restore-file  原来文件存储的相对路径
       原来文件的存储路径为/data/passwd ,那么参数后面直接指定passwd;如果原来的文件路径为/data/test/passwd,那么参数后面test/passwd.
            
恢复单个目录extundelete  /dev/sdb1  --restore-directory  /aaa     
       原来存储目录路径为: /data/aaa            

恢复所有删除的数据extundelete  /dev/sdb1 --restore-all
    
最后在当前目录下的RECOVERED_FILES目录中找到误删的文件。


注意:删除的第一时间要卸载文件系统。

本文转自   a8757906   51CTO博客,原文链接:http://blog.51cto.com/nxyboy/1975244

相关文章
|
18天前
|
Linux
Linux系统之whereis命令的基本使用
Linux系统之whereis命令的基本使用
54 23
Linux系统之whereis命令的基本使用
|
15天前
|
存储 网络协议 Linux
【Linux】进程IO|系统调用|open|write|文件描述符fd|封装|理解一切皆文件
本文详细介绍了Linux中的进程IO与系统调用,包括 `open`、`write`、`read`和 `close`函数及其用法,解释了文件描述符(fd)的概念,并深入探讨了Linux中的“一切皆文件”思想。这种设计极大地简化了系统编程,使得处理不同类型的IO设备变得更加一致和简单。通过本文的学习,您应该能够更好地理解和应用Linux中的进程IO操作,提高系统编程的效率和能力。
66 34
|
9天前
|
Linux
Linux文件与目录的日常
目录的切换 一般使用(”pwd“)显示当前所在的目录 比如:当前目录是在home下面的,与用户名相同的文件夹,可以使用(”cd“)命令来切换目录; 进入下载目录(”cd home/a/下载“)这种从给目录开头的一长串路经”叫做绝对路径“; 进入图片目录(”cd .. /图片/“)".."代表当前路径的上级路径,相对于当前的目录而言的”叫做相对路径“,(”.“)代表当前路径; 如果,想快速切换,上一个所在目录可以(”cd - / cd..“); 如果,想快速切换,追原始的目录可以(”cd --“); 查看目录及文件
35 14
|
4天前
|
Linux Shell
Linux 将所有文件和目录名重命名为小写
Linux 将所有文件和目录名重命名为小写
20 3
|
1月前
|
缓存 安全 Linux
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
131 23
|
2月前
|
Ubuntu Linux Go
golang编译成Linux可运行文件
本文介绍了如何在 Linux 上编译和运行 Golang 程序,涵盖了本地编译和交叉编译的步骤。通过这些步骤,您可以轻松地将 Golang 程序编译成适合 Linux 平台的可执行文件,并在目标服务器上运行。掌握这些技巧,可以提高开发和部署 Golang 应用的效率。
323 14
|
2月前
|
存储 NoSQL Linux
linux积累-core文件是干啥的
核心文件是Linux系统在程序崩溃时生成的重要调试文件,通过分析核心文件,开发者可以找到程序崩溃的原因并进行调试和修复。本文详细介绍了核心文件的生成、配置、查看和分析方法
179 6
|
3月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
384 8
|
5天前
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
54 25
|
3天前
|
缓存 Linux
Linux查看内存命令
1. free free命令是最常用的查看内存使用情况的命令。它显示系统的总内存、已使用内存、空闲内存和交换内存的总量。 free -h • -h 选项:以易读的格式(如GB、MB)显示内存大小。 输出示例: total used free shared buff/cache available Mem: 15Gi 4.7Gi 4.1Gi 288Mi 6.6Gi 9.9Gi Swap: 2.0Gi 0B 2.0Gi • to
14 2