linux基础(5)--恢复误删除的文件--RHEL6.5
来源:互联网 发布:捕鱼 网页 源码 编辑:程序博客网 时间:2024/05/05 07:18
1. 原理
linux下执行rm -f 命令文件并没有被实际的删除。除非inode被删除或者覆盖,inode文件inode可以使用ls -i 查看。
此处的误删文件恢复只适用于RHEL6X系列,不适用于RHEL7X系列。RHEL7系列的误删恢复后续会讲解。
此处使用的恢复软件是extundelete,安装包: extundelete-0.2.4.tar.bz2
2. 安装
1)安装上传软件。
此处使用的windows远程工具是xshell。
yum install lresz -y #安装rz, sz
rz 选择上传的文件。
2) 安装extundelete
解压
tar -jxvf extundelete-0.2.4.tar.bz2
进入解压后的目录后三把斧(./configure, make , make install)
./configure时报错,提示缺少依赖,安装依赖:
rpm -ivh /mnt/Packages/e2fsprogs-devel-1.41.12-18.el6.x86_64.rpm
也可: yum --y install e2fsprogs.x86_64 e2fsprogs-devel.x86_64 e2fsprogs-libs.x86_64
在此./configure
make
make install
此时命令被安装到了/usr/local/bin/中。
3)创建模拟环境
新建一个分区sda2
fdisk /dev/sda
.......(分区新建过程不再赘述)
新建完分区此时ls /dev/sda*并未发现sdb2。
reboot系统
重启完系统之后: ls /dev/sda*此时出现新分区/dev/sda2
格式化分区
mkfs.etx4 /dev/sda2
新建分区挂载点
mkdir /sda2
将新建的分区挂在到/sda2
mount /dev/sda2 /sda2
检查挂载是否成功
df -h
拷入实验用的文件
cp /etc/passwd /sda2 #测试文件
cp /etc/hosts /sda2 #测试文件
mkdir -p /sda2/a/b/c
touch /sda2/a/empty.txt #空文件
cd /sda2
rm -rf hosts passwd a #删除这三个测试文件
4)文件恢复
文件被误删后第一时间要卸载掉文件所在的分区,防止已删文件的节点被使用从而导致无法恢复。
umount /dev/sdb2
查看文件节点信息,注意被删除的文件的节点号。
extundelete /dev/sda2 --inode 2
使用inode恢复单个文件
extundelete /dev/sda2 --restore-inode 文件节点号
当前文件下生成目录: RECOVERED_FILES, 进入目录目录内文件即为恢复的文件,可使用diff检查是否与源文件一致, 检查一致后将将新建分区重新挂载,将恢复的文件拷到原位置即可。
使用文件名恢复单个文件
extundelete /dev/sda2 --restore-file 文件名
使用文件名恢复目录
extundelete /dev/sda2 --restore-directory a #发现空目录和空文件未恢复
恢复分区内的搜有文件
extundelete /dev/sda2 --restore-all
3. 小结
不能恢复空目录和空文件。因为是空文件,即使未恢复也不影响,重新新建即可。
- linux基础(5)--恢复误删除的文件--RHEL6.5
- linux基础(4)--文件管理--RHEL6.5
- Linux-Rhel6 恢复误删文件
- linux基础(12)--文件归档&&压缩--RHEL6.5
- linux基础(14)--输入输出重定向、文件查找--RHEL6.5
- 恢复误删除的linux文件
- Linux下恢复误删除的文件
- Linux下恢复误删除的文件
- 如何恢复误删除的Linux文件
- 如何恢复误删除的Linux文件
- 如何恢复误删除的Linux文件
- 恢复linux下误删除的文件
- 恢复linux下误删除的文件
- linux基础(18)--linux文件系统--RHEL6.5
- linux基础(8)--用户和组的管理--RHEL6.5
- linux基础(15)--locate、find命令的使用--RHEL6.5
- 如何恢复 Linux 上删除的文件,第 5 部分
- Oracle数据恢复 - Linux / Unix 误删除的文件恢复
- Android布局属性详解
- 三星手机setAction(MediaStore.ACTION_IMAGE_CAPTURE)时,data总为null问题与解决
- JAVA CAS原理深度分析
- servlet生命周期深入理解
- 用jQuery和bootstrap实现分页器
- linux基础(5)--恢复误删除的文件--RHEL6.5
- 51Nod 1084 矩阵取数问题 V2(多进程DP模板)
- 【BZOJ3998】【TJOI2015】 弦论 后缀自动机
- SQLite数据增删该查
- spring boot 配置druid数据源
- codeforces 581C Developing Skills
- mac安装Homebrew
- jdk基础设施回顾:jdk中的concurrent包
- usaco顺序的分数(随便搞,排序可以)和健康的赫斯坦奶牛(dfs)(水)