admin管理员组文章数量:1539571
博客:https://silentx.gitee.io/
一.概述
此次是使用不同工具对不同Linux系统进行数据恢复
环境准备:
系统:centos7,Ubuntu20,kali2022
软件:testdisk,foremost,extundelete,R-Linux
分区类型:ext3、ext4、vfat
二.centos7 使用testdisk对ext4分区的文件恢复
1.安装软件testdisk
yum install testdisk
2.初始化并挂载硬盘
虚拟机添加一块任意大小的硬盘,然后重启。
2.1.查看未挂载硬盘
fdisk -l
2.2.创建硬盘分区
fdisk /dev/sdb
2.3.格式化硬盘
mkfs.ext4 /dev/sdb #格式化为ext4
mkfs.vfat -I /dev/sdb #或者改为vfat类型(相当于windows下的fat32)
2.4.设置开机自动挂载
vim /etc/fstab
#末尾添加 /dev/sdb /huifu ext4 defaults 0 0
或者临时挂载
mkdir /huifu
mount /dev/sdb /huifu
2.5.挂载成功
df -h
3.创建文件,然后删除文件
4.恢复文件
4.1.使用软件testdisk选择需要恢复文件所在的硬盘
4.2.默认回车
4.3.用键盘方向键移动到list,然后回车
4.4.选择2.txt,并选择恢复的路径(“c”选择需要恢复的文件复制,“q”返回上一步)
4.5.成功恢复
5.查看日志文件
cat testdisk.log
三.Ubuntu20 使用foremost对ext4分区的文件恢复
1.安装软件foremost
apt-get install faremost
2.查看分区类型
(此次在/dev/sda2下进行恢复)
3.上传并且删除上传文件
4.恢复文件
4.1.设置虚拟机与主机的共享
4.2.恢复文件至/output下,并且复制到共享目录
foremost -t zip -i /dev/sda2
4.3.共享目录:/mnt/hgfs/1/。每个系统的路径大致相同,可能名称有所差别
4.4.恢复成功
5.补充
foremost仅支持ext3/ext4文件系统;
foremost是根据搜索文件头和文件尾来恢复文件,所以不支持恢复txt文件;
相关参数说明:
-t :指定文件类型(jpeg,pdf,doc,xls,ppt,zip,rar …)
-i :指定输入文件
-v :详细模式(将所有消息记录到屏幕上)
-o :设置输出目录(默认为输出)
四.Ubuntu20 使用extundelete对ext3分区的文件恢复
1.安装软件extundelete
1.1.安装依赖包
apt-get install e2fsprogs* -y
apt-get install e2fslibs-dev
apt-get install g++
1.2.下载extundelete包
wget http://downloads.sourceforge/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2
1.3.解压包
tar -jxvf extundelete-0.2.4.tar.bz2
1.4.生成makefile
cd extundelete-0.2.4
./configure --prefix=/usr/local/ extundelete
1.5.make编译报错。(因为版本不符)
make && make install
1.6.修改文件位于 extundelete源代码的src目录下的insertionops
修改后的截图:
1.7.修改后编译成功
1.8.添加环境变量
echo "PATH=/usr/local/extundelete/bin:$PATH" >> /etc/profile
echo "export PATH" >> /etc/profile
source /etc/profile
2.创建文件,然后删除文件
df -Th
3.恢复文件
3.1.使用extundelete搜索分区
extundelete /dev/sdb --inode 2 #搜索根节点
3.2.发现目录aaa
3.3.通过aaa的索引值,进入到aaa目录,发现被删除文件1.txt
extundelete /dev/sdb --inode 8193
3.4.根据inode恢复文件
extundelete /dev/sdb --restore-inode 8196
恢复至RECOVERED_FILES目录下
4.补充
1.extundelete支持文件系统:ext3/ext4;
2.在恢复文件时,最好用umount命令取消挂载磁盘;
3.相关参数:
磁盘文件扫描: extundelete {dev_part} --inode 2
根据inode节点恢复:extundelete {dev_part} --restore-inode {inode_num}
根据文件名恢复:extundelete {dev_part} --restore-file {file_name}
根据目录名恢复: extundelete {dev_part} --restore-directory {dir_name}
恢复所有文件: extundelete {dev_part} --restore-all
五.使用R-Linux恢复Debian系统文件
1.安装软件R-Linux
1.1. 查看系统版本
1.2.下载deb包(这里下载的r-Linux是r-studio的免费版)
https://www.r-studio/free-linux-recovery/Download.shtml
1.3.放在Debian系统上(kali)安装
dpkg -i RLinux5_x64.deb
1.4.左上角搜索R-LINUX
2.创建并删除文件
3.恢复文件
3.1.点击要恢复文件所在硬盘根目录
3.2.找到删除文件恢复,文件会被重命名
3.3.成功恢复到bbb文件夹
3.4.查看恢复文件
但是此时去bbb文件夹发现没有恢复成功的文件,我们注意看上面的截图,文件名前有“.”,它恢复出来是一个隐藏文件(不同系统情况不一样)。使用ls -al命令查看隐藏文件,然后重命名文件去掉“.”。
六.补充
Windows下比较好用的数据恢复软件有:X-Ways、R-Studio、winhex、DiskGenius…。数据能被恢复的前提是没有被覆盖。
版权声明:本文标题:Linux数据恢复 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1725685238a1036567.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论