当前位置:首页>Linux>Linux 文件误删恢复|基础恢复工具篇(下)

Linux 文件误删恢复|基础恢复工具篇(下)

  • 2026-10-11 08:06:43
Linux 文件误删恢复|基础恢复工具篇(下)

在上篇 Linux 数据恢复系列中,我们梳理了文件误删恢复的基础原则与前置思路,也介绍了 testdisk 在分区表修复、文件系统元数据重建上的能力。本篇作为 Linux 数据安全系列的基础篇(下篇),将聚焦与 testdisk 配套的核心工具 ——photorec,从原理、安装到完整实操流程,拆解它如何通过文件签名级扫描,在误删、格式化、文件系统损坏等场景下找回数据,帮你补齐 Linux 数据恢复的关键能力。

01
photorec 数据恢复工具

1.1 工具简介

PhotoRec 是一款专业的文件级数据恢复工具,专注于文件头特征扫描与文件内容重建,是处理分区丢失、文件误删、格式化场景的首选工具。

1.2 工具安装(与 TestDisk 同包)

PhotoRec 与 TestDisk 打包在一起,安装 TestDisk 即自动拥有 PhotoRec。

✅安装步骤:(以下提供三种安装方式,可任选其一操作)

# CentOS/RHEL 系列(通过包管理器安装)# 安装EPEL扩展源,CentOS默认源无testdisksudo yum install -y epel-release# 安装testdisk包sudo dnf install testdisk -y
# Ubuntu/Debian 系列(通过包管理器安装)# 更新系统软件源索引,拉取最新软件列表sudo apt update # 安装testdisk包sudo apt install testdisk -y
# 在线下载官方稳定版源码包(源码编译安装)wget https://www.cgsecurity.org/testdisk-7.1.tar.bz2# 解压bz2格式源码压缩包tar -jxvf testdisk-7.1.tar.bz2# 进入解压后的源码目录cd testdisk-7.1# 检测系统环境、生成编译配置文件./configure# 编译源码make # 将编译好的程序安装到系统全局sudo make install  

✅验证安装:

# 验证安装是否成功photorec --version

输出结果:

02
实战:PhotoRec 文件签名恢复

PhotoRec 通过文件签名而非文件系统元数据来恢复文件,适用于文件系统严重损坏的场景。

2.1 实战环境准备:创建测试镜像

✅一键创建带数据的测试镜像,执行以下命令,生成一个带测试文件的 photorec.img 镜像:

# 1. 创建 100MB 测试镜像dd if=/dev/zero of=/tmp/photorec.img bs=1M count=100# 2. 格式化镜像文件为 ext3mkfs.ext3 /tmp/photorec.img# 3. 挂载镜像并写入测试文件mkdir -p /mnt/recovermount /tmp/photorec.img /mnt/recoverecho "PhotoRec 测试文件,恢复成功" > /mnt/recover/recover.txtcp /mnt/recover/recover.txt /mnt/recover/bak.txt# 4. 模拟误删文件rm -f /mnt/recover/recover.txtsync# 5. 卸载镜像umount /mnt/recover# 6. 验证已卸载mount | grep photorec

输出结果:

2.2 PhotoRec 恢复误删文件

✅启动 PhotoRec 并选择目标镜像,执行以下命令启动工具:

photorec /tmp/photorec.img

✅PhotoRec操作步骤(一步步演示):

  1. 选择磁盘 / 镜像:选中 /tmp/photorec.img → 按 Enter。

b. 选择文件系统:选择 Ext2/Ext3/Ext4 → Enter(不确定就选 Other,兼容所有格式)。

c. 选择扫描范围:Free: 只扫空闲空间(速度快,适合刚删除);Whole: 全盘扫描(适合格式化、严重损坏)。

d. 设置恢复保存路径:按 Left/Right 切换目录;建议选择与源磁盘不同的位置,避免覆盖;定位到目标目录后,按 C 确认。

e. 选择文件类型:按 s 取消全选,勾选要恢复的格式,选好按 b 保存,再按 Enter 开始扫描。
f.等待恢复完成,结束后显示:Recovery completed。

2.3 验证恢复结果

为了直观验证文件是否成功恢复,分别查看删除前、误删后、恢复后的文件状态:

✅ 文件误删前(原始状态)
# 1. 挂载镜像(这是关键,挂载后文件才会出现)mount /tmp/photorec.img /mnt/recover# 2. 执行 ls 查看文件列表ls /mnt/recover# 3. 执行 cat 查看文件内容cat /mnt/recover/recover.txt

输出结果:

✅ 文件误删后(数据 “丢失” 状态)

# 模拟误删文件rm -f /mnt/recover/recover.txtsync# 卸载镜像,防止后续写入覆盖数据umount /mnt/recover# 此时重新挂载镜像,文件已“消失”mount /tmp/photorec.img /mnt/recoverls /mnt/recover

输出结果:

✅ 文件恢复后(数据找回状态)

# 恢复完成后,查看恢复目录中的文件ls /demo/RECOVERED_FILES/recup_dir/# 验证恢复文件的内容cat /demo/RECOVERED_FILES/recup_dir/f0000001.txt

输出结果:

综上,本次误删文件恢复成功,PhotoRec 可通过扫描文件签名找回丢失数据,恢复效果可靠,适用于常见数据恢复场景。

END
○内蒙古大学物理科学与技术学院教授李锋钰、博士生导师王磊等拓扑性质和超导电性共存的二维硼化钾化合物
○ 宁波东方理工大学理学部副教授周通、香港理工大学应用物理系助理教授杨明等地核压力下潜在的Xe₃CO₂化合物
○ 燕山大学理学院教授杨国春、江苏科技大学理学院博士娄焕BSi₅单层结构具有与氢覆盖率几乎无关的优异析氢反应活性

最新文章

随机文章