`
tcspecial
  • 浏览: 896302 次
  • 性别: 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文件系统误删除文件恢复.pdf

    如何恢复误删除的Linux文件

    作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,是难以恢复的。本文首先介绍Ext2文件系统结构,给出了恢复被误删文件的方法。

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

    Linux系统是服务器最常见的操作系统,当然也面临着非常多的安全事件,当发生删除文件错误的时候,恢复文件就尤为重要了,下面这篇文章主要介绍了Linux恢复删除文件的lsof命令,需要的朋友可以参考借鉴,下面来一起看...

    Linux文件系统反删除方法

    作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,是难以恢复的。尽管删除命令只是在档节点中作删除标记,并不真正清除文件内容,但是其它用户和一些有写盘动作的进程会很快覆盖这些资料。不过,对于...

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

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

    恢复Linux下误删除的文件

    做Linux运维不会恢复Linux下误删除的文件,这是很不应该的

    linux文件误删恢复

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

    Linux操作系统下如何能恢复误删除的文件

    Linux操作系统下如何能恢复误删除的文件

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

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

    Linux下数据删除恢复PDF

    Linux下数据删除恢复PDF,REDHAT

    模拟LINUX文件系统及终端

    1.开辟100M的硬盘空间,作为设定的硬盘空间。 2.模拟Linux文件系统,...(10)check:检测并恢复文件系统。 模拟文件系统的前端操作shell: 前端的shell进程和后端的simdisk进程之间利用共享内存进行进程间通信(IPC)。

    Linux下使用ext3grep恢复文件

    Linux下使用ext3grep恢复文件,实现从磁盘恢复已删除的文件。

    恢复被rm命令删除的文件:rlinux,开源

    适合系统:debian 系,deb 安装包。 用于 Fedora/RedHat Linux 平台的 R-Linux 自行到官网下载 用于 Debian/Ubuntu Linux 平台的 R-...恢复被rm命令删除的文件:rlinux https://www.bilibili.com/video/BV1KH4y1r7RY/

    模拟Linux文件系统

    (8) copy …: 拷贝文件,除支持模拟Linux文件系统内部的文件拷贝外,还支持host文件系统与模拟Linux文件系统间的文件拷贝,host文件系统的文件命名为…,如:将windows下D:盘的文件\data\sample\test.txt文件拷贝到...

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

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

    恢复误删除的Linux文件.pdf

    恢复误删除的Linux文件.pdf

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

    本文分析了Ext3文件系统结构,详细介绍了恢复被误删Ext3文件的方法。

    Linux 误删文件恢复命令及方法.doc

    无论在哪个系统中,删除文件都是必须谨慎的操作。因为如果不小心删除了重要文件,就会导致个人或公司出现重大的损失。类似于windows系统误删了文件,可以使用一些软件进行...Linux也是有几款软件可以做到误删恢复的。

    Linux系统环境Ext3文件系统的使用介绍

    本文向各位介绍Linux下使用ext3日志文件系统应用。Ext3文件系统是直接从Ext2文件系统发展而来,目前ext3文件系统已经非常稳定可靠。它完全兼容ext2文件系统。用户可以平滑地过渡到一个日志功能健全的文件系统中来。...

Global site tag (gtag.js) - Google Analytics