Linu下误删文件恢复

ps: 红字字体为重要部分, 仔细看

当意识到误删除文件后,切忌千万不要再频繁写入了,否则你的数据恢复的数量将会很少。 而我们要做的是,第一时间把服务器上的服务全部停掉,直接killall 进程名 或者 kill -9 pid 。 然后把误删除文件所在分区,重新挂载成ro,只读的 (mount  -o ro  /dev/sdb2  /data/)。

一、 利用系统工具debugfs恢复误删除文件

1. 首先创建一个目录及文件;

[[email protected] ~]# mkdir ceshi
[[email protected] ~]# echo 111 > ceshi/1.txt

2. 删除ceshi目录下的所有文件;

[[email protected] ~]# rm -rf ceshi/*

3. 利用系统自带还原工具debugfs来修复;

[[email protected] ~]# debugfs
debugfs 1.41.12 (17-May-2010)
debugfs:  open /dev/mapper/VolGroup-lv_root

4. 用ls -d参数显示刚刚删除文件的所在目录;

debugfs:  ls -d /root/ceshi/
 144661  (12) .    128522  (4084) ..   <128531> (4072) 1.txt

5. 显示<>尖括号的就是我们要找的文件inode号;

debugfs:  logdump -i <131458>

6. 执行完后, 显示了一屏信息, 我们需要的是这一行, 并且记住后面的值(即标注红色部分);

    Blocks:  (0+1): 127754 (2+1): 1768711539 (3+1): 7894382 (TIND): 1953724787

7. 退出debugfs, 执行以下命令;

debugfs:  q
[[email protected] ~]# dd if=/dev/mapper/VolGroup-lv_root of=/root/ceshi/1.txt.bak bs=4096 count=1 skip=30
#     if=输入的设备
#     of=输出的社保
#     bs=指定一个block的大小
#     count=多少个block需要dump
#     skip=   Blocks:  (0+1):后的值

8. 查看/root/ceshi/目录下是否生成1.txt.bak文件;

[[email protected] ~]# cat /root/ceshi/1.txt.bak
111

二、利用extundelete恢复误删文件

1. 利用yum安装依赖包;

[[email protected] ~]# yum -y install e2fsprogs*
[[email protected] ~]# yum -y install gcc*                    #extundelete编译时需要gcc环境

2. 下载并安装extundelete;

[[email protected] ~]# wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2

3. 解包、配置、编译及安装;

[[email protected] ~]# tar -jxvf extundelete-0.2.4.tar.bz2
[[email protected] ~]# cd extundelete-0.2.4
[[email protected] extundelete-0.2.4]# ./configure --prefix=/usr/local/extundelete      
[[email protected] extundelete-0.2.4]# make && make install

4. 检验是否安装成功;

[[email protected] extundelete-0.2.4]# cd /usr/local/extundelete/bin
[[email protected] bin]# ./extundelete -v
extundelete version 0.2.4
libext2fs version 1.41.12
Processor is little endian.

5. 扫描LVM分区误删的文件;

[[email protected] bin]# /usr/local/extundelete/bin/extundelete /dev/mapper/VolGroup-lv_root --inode 2

6. 恢复aaa.txt文件;

[[email protected] bin]# /usr/local/extundelete/bin/extundelete --restore-file aaaa.txt /dev/mapper/VolGroup-lv_root 
[[email protected] bin]# /usr/local/extundelete/bin/extundelete  --restore-all /dev/sdb2          #恢复分区

7. 查看恢复文件;

[[email protected] bin]# ls -l RECOVERED_FILES/     
恢复后的文件也是在   ./RECOVERED_FILES/  下,能否恢复就看你的运气好不好了。
时间: 2024-10-14 05:06:30

Linu下误删文件恢复的相关文章

Linux下误删文件恢复

资深的Linux玩家,一般不会误删文件,就算误删文件,往往提前做过备份.如果有像我一样的菜鸟误删文件并且没有备份的话该怎么办呢?我就故作高深的讲讲. 在Linux中有许多文件修复工具,在咱51cto上有大师介绍过,我就不多说,我就把我的方法介绍一下吧!我用的是debugfs工具. 具体步骤如下: 1.删除任一文件 2.查看你删除文件所在的磁盘,我的在/dev/sda2. 3.启动debugfs(在命令行输入debugfs即可),并打开删除文件所在的分区,我的是/dev/sda2 4.查找删除文件

GRT Recover My File误删文件恢复

在日常的电脑操作中,我们可能会由于硬盘硬件损坏.硬盘格式化导致文件的丢失,在这种情况下,推荐一款误删文件的恢复软件给大家使用. GRT Recover My File是由GRTSoft公司推出的一款数据恢复软件,能够帮助你恢复误删的照片.电影.歌曲等资源. 功能介绍:1.GRT Recover My File支持FAT12.FAT16.FAT32.NTFS文件系统:2.可以帮助你快速的恢复被误删除的文件和文件夹,即使回收站已被清空或使用SHIFT + Del键彻底删除也可以恢复:3.程序提供了易

安卓手机误删文件恢复?如何恢复

安卓手机误删文件恢复?如何恢复?你是不是也有因为自己的失误,而将我们的手机文件给误删除的时候,那么遇到这种时候,你是怎么解决的,你是不是会想要找回自己误删的手机文件呢? 其实,若是我们不小心将我们的手机文件给误删的话,我们是不是可以通过一些方法去恢复我们的手机文件呢?其实是可以的,我们若是没有任何备份的情况下的话,我们是可以使用下面的方法恢复的. 1.首先可以在准备恢复的时候打开电脑,之后在电脑上浏览器上下载安装"互盾安卓恢复大师",之后用数据线将电脑和丢失数据手机连接在一起,之后打开

手机误删文件恢复方法,简单恢复

手机误删文件恢复方法,简单恢复.我们很多的时候都会因为自己的手机一些细小的原因,而将我们的手机文件给误删了,其实有的时候,我们误删了也是无所谓的,我们是可以选择借助我们的手机备份去恢复的. 那么若是我们没有手机备份的情况下,我们是不是可以通过一些方法找回我们的手机误删文件呢?我们该怎么恢复我们的手机误删文件呢?若是你不会的话,你也可以选择试试下面的方法去找回你的手机误删文件. 1.首先可以在准备恢复的时候打开电脑,之后在电脑上浏览器上下载安装"互盾安卓恢复大师",之后用数据线将电脑和丢

Linux Ext3、Ext4误删文件恢复 extundelete

使用linux难免遇到误删文件的情况,使用extundlete 即可恢复误删文件 记下操作流程:1. 安装Linux数据恢复软件extundelete需要依赖两个包 sudo aptitude install e2fsprogs e2fslibs-dev 下载页面http://extundelete.sourceforge.net/ 快速下载: download extundelete 编译三部曲 ./configuremakesudo make install 2.如果分区已经挂载,先umou

Ubuntu 16.04使用rm -rf误删文件恢复方法收集

说明:不一定有效,需要不断尝试 一.lsof 文件刚刚被删除,想要恢复,先尝试lsof. lsof |grep data.file1 cp /proc/xxx/xxx/xx /dir/data.file1 如果lsof不能看到文件,那么就需要使用恢复软件进行恢复. 要做的第一件事是立刻卸载被误删除文件所在的分区,或者重新以只读方式挂载此分区. umount /dev/part 或 mount -o remount,ro /dev/part 删除一个文件,就是将文件inode(inode 是操作系

idea救命篇--误删文件恢复

删除.覆盖文件恢复:右键文件--Local History 查到被删的代码,idea自动保存的. 即使文件目录文件被删了,在同地方新建一个同名空文件,也可以通过Local History找回来代码. 原文地址:https://www.cnblogs.com/phpli/p/10727327.html

linux 误删文件恢复

文档太给力了!误删了几个重要文件,抖抖嗦嗦偷偷恢复了,救了我!!! http://jingyan.baidu.com/article/2f9b480d6c2bcd41cb6cc223.html 注意几个地方: 1)最后cd到误删目录下操作,否则有可能 logdump时告诉你不存在 2)df -T 可以查看文件系统,找你熟悉的试试看是不是. [[email protected] tmp]# cd ../data/admin/weblog_wireless/[[email protected] we

CentOS 6 下部署文件恢复神器extundelete

extundelete安装 1.安装依赖包 # yum install e2fsprogs* -y 2.下载并安装extundelete # wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2 # tar -jxvf extundelete-0.2.4.tar.bz2 # cd extundelete-0.2.4 # ./configure --pr