`
tcspecial
  • 浏览: 911509 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Linux 恢复删除文件

    博客分类:
  • OS
阅读更多

 

Linux下的rm命令太可怕了,一不小心 rm -rf / 那就悲剧了,请慎用rm -rf。

如果一不小心删除重要文件,后续不对该路径文件操作,可以通过相关命令找回被删文件。

原理主要是删除的文件并没有实际上从硬盘上抹去,只是inode索引删除了相关的信息(单链表节点删除实现),因此只要找到刚删除文件的block上,就可以恢复已经删除的文件。

 

 

一. 查看分区

 

df -T
Filesystem     Type  1K-blocks     Used Available Use% Mounted on
/dev/sda1      ext4   41284928 38206612    981164  98% /
tmpfs          tmpfs   1961248    10240   1951008   1% /dev/shm
/dev/sda5      ext4  119724260  6428840 107213784   6% /data
/dev/sda2      ext4   41284928   799900  38387876   3% /usr/local

 

 

二. ext3

 

sudo debugfs
open /dev/sda1		        #打开分区

ls -d /home/test/src		#显示该目标删除文件inode
819307  (12) .    819306  (4084) ..   
<790528> (4072) bosstest.cpp   
<792294> (4052) btest.cpp   
<792214> (4032) qwd_kettas.pb.cc   

logdump -i  <790528>		#查看该文件日志内容
...
[blocks] 12345 		        #12345为存放bosstest.cpp数据块地址

sudo dd if=/dev/sda1 of=/tmp/my1.cpp count=1 skip=12345   #读取12345处数据至my1.cpp中

 

三. ext4

debugfs只能恢复ext3系统文件,extundelete支持ext3/ext4文件系统的恢复。

  

sudo yum install -y e2fsprogs			#安装依赖库

sudo extundelete --inode 819203 /dev/sda1	#查找指定目录下删除文件
File name                                       | Inode number | Deleted status
.                                                 819307
..                                                819306
bosstest.cpp                                      790528         Deleted
btest.cpp                                         792294         Deleted
qwd_kettas.pb.cc                                  792214         Deleted

sudo extundelete --restore-inode 790528 /dev/sda1	#恢复指定inode文件,恢复文件在./RECOVERED_FILES
sudo extundelete /dev/sda1 --restore-all		#恢复/dev/sda1分区下所有文件

 

大多数情况下,会出现以下提示:Unable to restore inode 792214 (file.792214): Space has been reallocated.  由于文件系统被覆盖,已经无法恢复文件。

 

参考链接:

 

http://extundelete.sourceforge.net/

 

 

 

 

 

 

分享到:
评论

相关推荐

    Linux XFS文件系统误删除文件恢复.pdf

    Linux XFS 文件系统误删除文件恢复 在 Linux 操作系统中,文件误删除是一种常见的故障,可能会导致重要文件的丢失。幸运的是,在 Linux XFS 文件系统中,误删除文件可以通过一定的方法恢复。本文将讨论 Linux XFS ...

    如何恢复误删除的Linux文件

    作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,是难以恢复的。然而,对于家庭单机使用的 Linux,或者误删文件后及时补救,还是可以恢复的。 Ext2 文件系统结构 在 Linux 所用的 Ext2 文件系统中,...

    在Linux下如何删除的文件.pdf

    然而,通过了解 Linux 文件系统的结构和工作原理,我们可以使用一些技术来恢复删除的文件。本文将详细介绍如何在 Linux 下恢复删除的文件。 文件系统结构 在 Linux 下,文件系统是按照inode(索引节点)来组织的。...

    Windows下Linux分区文件恢复软件

    在Windows操作系统中,当面临Linux分区的数据丢失问题时,我们可以借助特定的软件来恢复这些丢失的文件。本文将深入探讨Windows环境下对Linux分区文件恢复的相关知识点。 首先,我们需要理解Linux分区的文件系统...

    linux下恢复被删除的文件.zip

    在Linux操作系统中,数据恢复是一项重要的任务,尤其是在不小心删除了重要文件时。本文将深入探讨在Linux环境下如何恢复被删除的文件,主要关注两种常用的数据恢复工具:ext3grep和extundelete。 首先,让我们理解...

    Linux恢复删除文件的lsof命令详解

    ### Linux恢复删除文件的lsof命令详解 #### 一、引言 在日常的Linux系统管理和维护过程中,经常会遇到由于误操作导致重要文件被删除的情况。这些误删的文件可能包含重要的系统日志或者配置信息,对于系统的稳定运行...

    恢复Linux下误删除的文件

    本文将详细介绍Linux下如何恢复误删除的文件,以及涉及的文件操作命令。 首先,我们需要理解Linux文件系统的构成,这包括文件名、inode(索引节点)和block(数据块)。文件名是人们易于理解和识别的名称,实际存储...

    Linux下删除文件下彻底删除文件.docx

    但需要注意的是,Linux系统并没有回收站,因此一旦使用`rm`删除文件,它将永久消失,无法通过常规方式恢复。本文将详细介绍如何在Linux下删除文件和文件夹,以及如何使用`shred`命令进行彻底删除。 ### Linux删除...

    删除文件恢复C++实现

    在IT领域,文件恢复是一项重要的技术,特别是在用户不小心删除了重要文件时。本文将深入探讨如何使用C++在Windows操作系统下实现对NTFS(New Technology File System)和FAT32(File Allocation Table 32)文件系统...

    Linux文件系统反删除方法

    总之,尽管Linux的文件删除机制增加了文件恢复的复杂性,但通过理解文件系统的工作原理和使用适当的工具,如debugfs,还是有可能挽回误删的文件。不过,预防总胜于治疗,定期备份重要数据是避免数据丢失的最好策略。

    R-Linux(linux数据恢复工具) v3.0免费版.zip

    该软件可以帮助用户恢复Linux系统下丢失的文件,包含误删除,误格式化等造成的文件丢失等等,支持ext2fs文件系统,使用于Linux操作系统和若干的Unix。 R-Linux功能介绍 R-Linux专门为Linux/Unix数据恢复设计,...

    Linux Ext3文件被删除后的恢复方法

    1. 以只读模式重新挂载包含被删文件的分区,防止新的写操作覆盖丢失的数据。使用如`mount -r -n -o remount /usr`的命令。 2. 如果有进程正在使用该分区,使用`fuser`命令找出并停止它们,以确保数据安全。 3. 在...

    linux文件误删恢复

    rhel6恢复ext4文件系统下误删除的文件详细解释与说明!!!!!!!!!!!!!!!!!!!!!!!!

    linux创建只读文件系统。用root也无法创建,无法删除文件.zip

    在Linux操作系统中,创建一个即使是root用户也无法修改或删除文件的只读文件系统是一个安全措施,可以保护系统的重要数据免受意外更改。这样的设置通常用于关键系统或存储关键信息的分区,以确保数据的完整性。以下...

    linux下rm -r误删NTFS文件恢复方法.docx

    4. 恢复被删文件:根据扫描结果,选择要恢复的文件,并使用 ntfsundelete 命令恢复这些文件。 四、ntfsundelete 命令的使用 ntfsundelete 命令是用于恢复被删 NTFS 文件的命令。使用该命令时,需要指定要恢复的...

    恢复删除文件(不小心删除的东西,只要没重装系统,都可以恢复)

    标题"恢复删除文件(不小心删除的东西,只要没重装系统,都可以恢复)"明确指出,即使用户误删了文件,只要没有对计算机进行系统重装,通常都有可能找回这些文件。这涉及到操作系统级别的文件管理、回收站机制以及更深...

    磁盘数据恢复 删除文件恢复 删除数据恢复(源代码)

    开发数据恢复软件的程序员需要理解文件系统的底层工作原理,例如FAT(文件分配表)、NTFS(新新技术文件系统)或EXT系列(Linux下的文件系统)等。他们需要编写代码来读取磁盘扇区,解析文件分配表或日志,寻找被...

    误删文件恢复工具\文件恢复工具

    文件恢复工具的核心功能是通过扫描硬盘上的数据痕迹,寻找已被删除但尚未被新数据覆盖的文件,并尝试恢复它们。这种工具通常能够处理多种类型的存储设备,如硬盘、SSD、USB闪存盘、SD卡等。在标题和描述中提到的...

Global site tag (gtag.js) - Google Analytics